#python #django #django-views
#python #django #django-просмотры
Вопрос:
Используя Django, я пытаюсь передать заголовок текущей страницы в динамический URL-адрес, но я продолжаю получать ошибки, заголовок страницы также создается динамически из других views.py функции.
Ошибка
тип исключения: TypeError
значение исключения: edit_page() получил неожиданный аргумент ключевого слова ‘title’
urls.py
path("wiki/edit/<str:title>", views.edit_page, name="edit")
HTML-файл
{% block title %} {{ title }} {% endblock %}
{% block body %}
<a class="page-link" href="{% url 'wiki:edit' page=title %}">edit page</a>
{% endblock %}
views.py
def edit_page(request, page):
page_request = page
if request.method == "GET":
return render(request, "encyclopedia/edit_page.html", {
"form": form,
"page": page_request
})
Комментарии:
1. Какая у вас ошибка? Добавьте трассировку ошибки
2. Обновил его с помощью трассировки ошибок
Ответ №1:
Обновите свой параметр edit_page(...)
функции до
def edit_page(request, title):
page_request = title
# rest of your code
Комментарии:
1. Спасибо. Не могли бы вы объяснить, почему это произошло? Был ли синтаксис неправильным?
2. Функция просмотра ожидала ввода параметра с именем
title
, и вам был отправлен параметр с именемpage
3. Не могли бы вы проголосовать за ответ, если это было полезно? @Gerald-x