#python #django-rest-framework
#python #django-rest-framework
Вопрос:
Возможно ли иметь вложенную конечную точку для API без библиотеки drf-nested-routers?
Я попытался установить библиотеку в свой проект, но, похоже, безуспешно, я боюсь, что установка приведет к сбою проекта, поэтому я перестал устанавливать пакет.
Теперь я пишу api для получения данных из моделей, обычной конечной точкой будет
/test?limit=10amp;offset=10
И я хотел бы разработать функцию поиска и просмотреть более подробную информацию о ней, вызвав этот api
/test/{data_id}
например, вызов первой конечной точки приведет к получению данных:
{
id:1,
name:test,
id:2,
name:test2,
}
когда я вызываю вторую конечную точку, она покажет
/test/1
{
id:1,
name:test,
age:17,
gender:M,
}
Этого можно достичь без пакета вложенных маршрутизаторов? Я пытался, но он станет поиском и не сможет отображать подробную информацию
Ответ №1:
Я нахожу способ достичь своей цели
добавьте следующий оператор re_path в urls.py
router.register("test",TestViewSet)
urlpatterns =[
re_path('^test/(?P<test_uid>. )/', TestIDViewSet.as_view({'get':'list'})),
]
urlpatterns = router.urls
и создайте новый набор представлений в viewset.py