Система Django CRUD без django.forms, передающая {{ id }} для просмотра функции

#python #django #django-templates #crud

#python #django #django-шаблоны #crud

Вопрос:

Я программирую CRUD (без использования django.forms или общих форм) Я не могу передать значение id из toUpArti() в updateArti () кто-нибудь может сказать мне, как или упомянуть другой способ решения этой проблемы


article/views.py:

 def toUpArti(request, arti_id):

    d = ArticleItem.objects.get(id=arti_id)

    return render(request, 'artiUp.html')



def updateArti(request):

    u = ArticleItem.objects.filter(id=x).update(title=request.POST['title'],
                                               body=request.POST['body'])
    return HttpResponseRedirect('/article/')
  

Комментарии:

1. Не могли бы вы подробнее рассказать о своей проблеме? Как вызывается updateArti представление? Каковы шаблоны URL?

2. Вам нужно будет либо передать идентификатор в качестве параметра URL, либо указать идентификатор в теле сообщения.

Ответ №1:

Я предполагаю, что ваш URL-адрес выглядит примерно так

 path('article/<int:arti_id/', views.toUpArit, name='view-article')
  

Тогда ваш возврат должен быть HTTPRespoonseRedirect(reverse('view-article', kwargs='arti_id:u.id}))

Используйте принцип DRY