Почему не работает редактирование продукта Django. Реверс для 'edit' не найден?
Я пытаюсь отредактировать товар (без использования forms.py), но получаю ошибку Reverse for 'edit' not found. 'edit' не является допустимой функцией представления или именем шаблона.
vievs.py
def edit(request, id):
if (request.method == 'POST'):
obj, update = Posts.objects.update_or_create(title=request.POST.get("title"))
obj.text=request.POST.get("text")
obj.date=request.POST.get("date")
obj.image=request.POST.get("image")
obj.save()
return render(request, 'edit.html')
html
<form action="{% url "blog:edit" %}" method="post">
{% for el in posts %}
{% csrf_token %}
<input type="text" placeholder="Название" name="title" value="{{ el.title }}"><br>
<textarea placeholder="Текст статьи" rows="8" cols="80" name="text"></textarea><br>
<input type="file" name="image"><br>
<button type="submit">Добавить статью</button>
{% endfor %}
</form>
Вам нужно определить представление в blog
файле urls.py
вашего приложения. Что-то вроде этого:
urlpatterns = [
# ... other patterns
path('<int:id>/edit/',views.edit,name='edit'),
]