मैं एक दूसरे के पीछे "पीछे" एक व्यूसेट को कॉन्फ़िगर करने का प्रयास करता हूं। यहाँ कोड है:

from rest_framework import routers
router = routers.DefaultRouter()
router.register('places/nice', NicePlacesViewSet)
router.register('places/nice/current', CurrentNice remove last slash PlacesViewSet)

दोनों मार्ग /manage.py show_urls के अनुसार उपलब्ध हैं, लेकिन यदि कोई places/nice/current पर GET करता है, तो मुझे केवल 404 त्रुटि मिलती है।

और यदि कोई अंतिम स्लैश को हटाने के लिए अंतिम पंक्ति बदलता है:

router.register('places/nice_current', CurrentPlacesViewSet)

सब कुछ पूरी तरह से काम करता है और मैं वर्तमान व्यूसेट सूचनाएं प्राप्त कर सकता हूं।

क्या इस तरह के नेस्टेड व्यूसेट पर कोई सीमाएँ हैं? व्यूसेट को उसी पथ पर नेस्ट नहीं किया जाना चाहिए? :)

1
Romain 16 सितंबर 2020, 17:59

1 उत्तर

सबसे बढ़िया उत्तर

register() कथनों का क्रम इस प्रकार बदलें

router = DefaultRouter()
router.register('places/nice/current', CurrentPlacesViewSet)
router.register('places/nice', NicePlacesViewSet)
1
JPG 16 सितंबर 2020, 18:04