如何在视图中处理django请求?

时间:2016-08-20 14:26:27

标签: django django-forms django-views

这是我想知道如何处理get和post请求的代码。我大部分时间都对如何更好地理解这一点感到困惑,以便我可以编写更好的后端代码。

    def post_create(request):
    if request.user.is_staff or request.user.is_superuser:
        form=PostForm(request.POST or None,request.FILES or None)
        if form.is_valid():
            instance =form.save(commit=False)
            #print form.cleaned_data.get("title")
            instance.user=request.user
            instance.save()
            return HttpResponseRedirect(instance.get_absolute_url())
        context={
            "form":form,}
        return render(request,"post_form.html",context)
    else:
        raise Http404

这段代码用于处理创建帖子的请求

1 个答案:

答案 0 :(得分:2)

此视图不会对各种请求方法(如GET或POST)进行任何区分。如果是这样,你会看到类似的东西:

def post_create(request):
    if request.method == 'GET':
        # your code
    elif request.method == 'POST':
        if request.user.is_staff or request.user.is_superuser:
        # your code