Size: a a a

Django [ru] #STAY HOME

2021 January 11

МА

Марат А in Django [ru] #STAY HOME
как по отдельности все это сделать для каждого пути я понимаю, но нужно, чтобы ulrы автоматом генерировались, через router
источник

DT

Dan Tyan in Django [ru] #STAY HOME
через роутер подставь префикс
источник

DT

Dan Tyan in Django [ru] #STAY HOME
там же обычный иклуд
источник

МА

Марат А in Django [ru] #STAY HOME
Dan Tyan
через роутер подставь префикс
можешь подсказать пример, а то я в документации читал, но так и не догнал как правильно сделать
источник

DT

Dan Tyan in Django [ru] #STAY HOME
path('user/', include(router.urls))
источник

МА

Марат А in Django [ru] #STAY HOME
Dan Tyan
path('user/', include(router.urls))
я вроде бы так и сделал
источник

МА

Марат А in Django [ru] #STAY HOME
если сделать так:
path('api/companies/', include((router.urls, 'companies'), namespace='companies')),
то API root меняется на http://127.0.0.1:8000/api/companies/
источник

DT

Dan Tyan in Django [ru] #STAY HOME
ну для companies да
источник

МА

Марат А in Django [ru] #STAY HOME
нужно, чтобы  API root остался http://127.0.0.1:8000/api/
и добавились пути /api/ + /companies/
источник

N

Nire in Django [ru] #STAY HOME
Марат А
нужно, чтобы  API root остался http://127.0.0.1:8000/api/
и добавились пути /api/ + /companies/
еще версию надо добавить
источник

N

Nire in Django [ru] #STAY HOME
api/v0.1b/погнали
источник

DT

Dan Tyan in Django [ru] #STAY HOME
Марат А
нужно, чтобы  API root остался http://127.0.0.1:8000/api/
и добавились пути /api/ + /companies/
можешь сделать это в rounter.register('companies/payment', PaymentViewset)
источник

S

St4s in Django [ru] #STAY HOME
подскажите, как можно увидеть стек вызовов для этого дела?

Forbidden: /api/users/change-password/
[11/Jan/2021 13:01:41] "PUT /api/users/change-password/ HTTP/1.1" 403 63
источник

N

Nire in Django [ru] #STAY HOME
а вообще, имхо, надо разделить вьюхи для апи, например создать файлик api_urls и его заинклудить как 'api/v1/
источник

МА

Марат А in Django [ru] #STAY HOME
Dan Tyan
можешь сделать это в rounter.register('companies/payment', PaymentViewset)
Я так пробовал в первую очередь, и вроде бы даже список вызовов отображается корректно, но ломается вывод списка 'companies/details'
источник

МА

Марат А in Django [ru] #STAY HOME
источник

МА

Марат А in Django [ru] #STAY HOME
тут должен быть список записей из таблицы companies_details
источник

МА

Марат А in Django [ru] #STAY HOME
а http://127.0.0.1:8000/api/companies/details/1/ выводит информацию по отдельной записи нормально
источник

DT

Dan Tyan in Django [ru] #STAY HOME
потому что /detail/ попадает в первое правило
источник

МА

Марат А in Django [ru] #STAY HOME
Dan Tyan
потому что /detail/ попадает в первое правило
типа служебное имя?
источник