Надеюсь, кто-нибудь может мне помочь! Я уверен, что есть небольшая ошибка, которую я не могу обнаружить. На моем сайте есть список товаров с кнопкой обновления. Как только я нажимаю на кнопку, у меня появляется следующее сообщение об ошибке:
Reverse for 'edit_info' with keyword arguments '{'slug': ''}' not found. 1 pattern(s) tried: ['search/(?P<slug>[-\\w]+)/edit/$']
Я что-то упустил из файла urls.py? Вот код, большое спасибо!
views.py
class optionView(TemplateView):
template_name = 'search/option.html'
@login_required
def AddInfo(request):
form = InfoForm(request.POST or None, request.FILES or None)
if form.is_valid():
instance = form.save(commit=False)
instance.utente = request.user
instance.save()
context = {'form': form}
return render(request, 'search/option.html', context)
def edit_info(request, slug):
instance = get_object_or_404(Info, slug=slug)
if request.method == 'POST':
form = InfoForm(request.POST, instance=obj)
if form.is_valid():
instance = form.save(commit=False)
instance.utente = request.user
instance.save()
return render(request, 'search/user.html')
else:
form = InfoForm(instance=obj)
template = 'search/option.html'
context = {'form': form}
return render (request, template, context)
urls.py
urlpatterns = [
path('', homeView.as_view(), name='home'),
path('option/', views.AddInfo, name='option'),
path('delete/<int:id>', views.DeleteInfo, name='delete'),
re_path(r'^search/(?P<slug>[-\w]+)/edit/$', views.edit_info, name='edit_info'),
path('signup/', core_views.signup, name='signup'),
path('user/', userListView.as_view(), name='user'),
path('searches/', searchesView.as_view(), name='searches'),
]
template html:
{% if object_list %}
{% for o in object_list %}
<div class="container_band">
<div class=album_band>
<!-- insert an image -->
{%if o.cover%}
<img src= "{{o.cover.url}}" width="100%">
{%endif%}
</div>
<div class="info_band">
<!-- insert table info -->
<table>
<tr><th><h3>{{o.band}}</h3></th></tr>
<tr><td> Anno: </td><td> {{o.anno}} </td></tr>
<tr><td> Disco: </td><td> {{o.disco}} </td></tr>
<tr><td> Etichetta: </td><td> {{o.etichetta_d}} </td></tr>
<tr><td> Matrice: </td><td> {{o.matrice}} </td></tr>
</table>
</div>
<div class="mod">
<table>
<tr>
<td>
<a href="{% url 'edit_info' slug=obj.slug %}"><button type="button" class=" btn btn-default"> Update </button></a>
</td>
</tr>
<tr>
<td>
<button>Delete</button>
</td>
</tr>
</table>
</div>
</div>
{% endfor %}
{%endif%}
</div>