Django-重定向到保存用户输入的任何表单数据的调用URL

时间:2018-09-19 20:48:28

标签: django django-forms django-templates django-views

我有一个用于创建记录和更新记录的表格。我还使用一个单独的表来保存与正在创建/更新的这些记录相关的附件。添加附件很容易,因为我不需要任何参数来创建新记录,但是当我删除附件记录时,我被迫创建一个单独的<form>请求,以发布到处理附件删除的网址中,然后重定向回调用网址。无论何时发送此请求,它都会删除表单上所有已修改的表单数据。

因此,如果他们从头开始填写表格并需要删除附件,则会在将请求重定向回该表格时清除表格上的所有信息。

另一个例子是,如果他们正在通过表单更新记录,并且需要删除和附加附件,它将在修改发生之前重新显示信息。

人们必须这样做,这是很平常的事情,这是我不做什么或做错了什么吗?

如果需要更多信息,请告诉我。

Views.py

def remove_attachment(request, id):
    if request.method == 'POST':
        if request.path == reverse('requisition:remove_file_attachment', args=[id]):
            attachment = get_object_or_404(FileAttachments, id=id) 
        elif request.path == reverse('requisition:remove_temp_attachment', args=[id]):
            attachment = get_object_or_404(TempAttachments, id=id)
        elif request.path == reverse('requisition:remove_basket_attachment', args=[id]):
            attachment = get_object_or_404(BasketAttachments, id=id)

        attachment.delete()
        return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))

0 个答案:

没有答案
相关问题