#python #django
#python #django
Вопрос:
У меня мой URL определен следующим образом:
(r'^article/edit/(.*)/$', 'mysite.views.edit_article')
И функция, определенная как:
def edit_article(request, article_id):
Однако, похоже, что любой запрос на эту страницу приводит к передаче неправильного значения для article_id. Если я переопределю свой URL как
(r'^article/(.*)/$', 'mysite.views.edit_article')
За вычетом «редактировать /» это, кажется, работает. Есть предложения о том, как это исправить?
Комментарии:
1. Какое «неправильное значение» вы получаете?
2. В чем это ошибка? Каково фактическое значение для
article_id
по сравнению с ожидаемым значением?
Ответ №1:
Попробуйте это:
url (r'^article/edit/(?P<article_id>d )$', 'mysite.views.edit_article'),
Взгляните на именованные группы в документации Django
Комментарии:
1. Вам не нужно указывать имя параметра — если вы этого не сделаете, оно будет передано позиционно, первому аргументу в функции (после запроса). Поскольку его представление имеет только один дополнительный аргумент, оно должно работать в любом случае.