Ошибка Django URL: noreversematch в моем приложении
Я вижу эту ошибку в моем приложении Django
NoReverseMatch at /kaitorihyou/delete_fields_group/18
Reverse for 'delete_fields_group' with arguments '('',)' not found. 1 pattern(s) tried: ['kaitorihyou/delete_fields_group/(?P<fields_group_id>[0-9]+)\\Z']
Вот строка в моем шаблоне, которая перенаправляет на этот URL
<form action="{% url 'kaitorihyou:delete_fields_group' fields_group_id %}" method="delete">
Мой urls.py
содержит этот шаблон в вопросе
app_name = "kaitorihyou"
urlpatterns = [
path('delete_fields_group/<int:fields_group_id>', views.delete_fields_group, name="delete_fields_group"),
# etc.
]
Почему шаблон url не соответствует?
Если я изменю action=
в моей форме на это, она работает
<form action="/kaitorihyou/delete_fields_group/{{ fields_group_id }}" method="delete">
Нашел ответ сам.
Проблема заключалась в том, что urls.py не содержал косую черту, поэтому
# this is wrong
path('delete_fields_group/<int:fields_group_id>', ...),
# should be this
path('delete_fields_group/<int:fields_group_id>/', ...),