Konstantin18ko
@Konstantin18ko
Стоматолог

Как забрать параметр из адресной строки?

Есть адресная строка:
localhost/patient/id/1/consultation и localhost/patient/id/1/consultation/2
В файле urls.py:
urlpatterns = [
    url(r'^$', views.index, name='patient'),
    url(r'id/(?P<id_patient>[0-9]+)/$', views.patient, name='patient'),
    url(r'id/(?P<id_patient>[0-9]+)/consultation/(?P<id_consultation>[0-9]+)', views.consultation, name='patient_consultation'),
]

Во views.py
def consultation(request, id_patient, id_consultation):
    patient = Patient.objects.get(pk=id_patient)
    return render(request, 'patient/id/consultation/index.html', locals())


Как сделать последний параметр(параметр консультации) не обязательным?
  • Вопрос задан
  • 232 просмотра
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Django
Седой и строгий
def consultation(request, id_patient, id_consultation=None):
    if id_consultation is not None:
        consultation = get_object_or_404(Consultation, pk=id_consultation)
    ...
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
18 апр. 2024, в 07:58
500 руб./в час
18 апр. 2024, в 07:22
45000 руб./за проект
18 апр. 2024, в 01:12
150000 руб./за проект