区分Django views.py中同一页面上的不同发布请求

时间:2013-08-24 05:11:33

标签: python django

我有一个网页,我希望能够通过多个帖子请求动态修改。基本上有两种方法,用户可以提交文本上传到模型中;一个是通过文本输入字段,另一个是通过文件上载字段。如何设置我的python条件来执行此操作?我希望能够使用if和语句来区分两个post请求。我应该使用什么区别变量来区分这两者。到目前为止,我的views.py文本输入正常工作。

def homesite(request):
corpusitems = CorpusItem.objects.order_by('name')
if (request.method == 'POST'):
    f = CorpusItemForm(request.POST)
    if f.is_valid():
        new_corpusitem = f.save()

return render(request, 'content.html', {'corpusitems': corpusitems})

1 个答案:

答案 0 :(得分:7)

HTML中的提交按钮具有名称和值属性。例如,如果你有:

<form>
    <input type="submit" name="action" value="Send"/>
    <input type="submit" name="action" value="Hello"/>
</form>

然后在Django中,您可以通过action

的值区分两个提交操作
if request.POST['action'] == 'Send':
    # do this
elif request.POST['action'] == 'Hello':
    # do that