Данные не удаляются со страницы CRUD и также не удаляются в базе данных
Привет я новичок в django и я делаю CRUD операции, я успешно завершил CRU, осталось только удалить, я пытаюсь SOFT DELETE данные. Ниже приведена моя функция del_cat:
def del_cat(request,id):
delcategory = Categories.objects.get(id=id)
delcat={}
delcat['isactive']=False
form = CategoriesSerializer(delcategory,data=delcat)
if form.is_valid():
print(form.errors)
form.save()
messages.success(request,'Record Deleted Successfully...!:)')
return redirect('categories:show_cat')
else:
print("sfsdrf",form.errors)
return redirect('categories:show_cat')
ниже приведен путь к урлам
Ниже приведен путь href для кнопки удаления
все же данные не удаляются и остаются в базе данных, в чем может быть проблема в коде?
Я не знаю, почему вы используете здесь форму. Является ли is_valid истиной?
я бы сделал это с помощью POST (из соображений безопасности) (django-antipattern)
так в шаблоне:
<form method='POST' action='categories/del_cat/{{result.id}}'>
{{ csrf-token }}
<button type="submit">DELETE</button>
</form>
и в представлении:
from django.views.decorators.http import require_POST
@require_POST
def del_cat(request,id):
try:
delcategory = Categories.objects.get(id=id)
delcategory.isactive = False
delcategory.save()
messages.success(request,'Record Deleted Successfully...!:)')
return redirect('categories:show_cat')
except ObjectDoesNotExist:
messages.success(request,'No record with this id exists')
return redirect('categories:show_cat')
PS. публикуйте свой код, а не его изображения.