Python/Django多页表单重定向

Python/Django多页表单重定向,python,django,django-sessions,Python,Django,Django Sessions,我目前有以下两个视图,它们都是控件窗体。在通过重定向移动到第二个视图之前,选择“活动”将已发布的数据保存到会话变量。然而,出现的问题是,AddMessage的get方法被忽略,直接转到post方法,表单的后半部分由get方法输出 有人能解释一下情况吗 class SelectCampaign(View): template_name = "dash/SelectCampaign.html" form = messageForm1() def get(self, re

我目前有以下两个视图,它们都是控件窗体。在通过重定向移动到第二个视图之前,选择“活动”将已发布的数据保存到会话变量。然而,出现的问题是,
AddMessage
的get方法被忽略,直接转到post方法,表单的后半部分由get方法输出

有人能解释一下情况吗

class SelectCampaign(View):
    template_name = "dash/SelectCampaign.html"

    form = messageForm1()


    def get(self, request, *args, **kwargs):
        user = User.objects.get(username=request.user.username)
        up = user.get_profile()
        self.form.fields['location'].queryset = up.owned_locations.all()
        return render(request, self.template_name, {'form': self.form})

    def post(self, request, *args, **kwargs):
        form = messageForm1(request.POST)
        if form.is_valid():
            request.session['MMANAGER_FORM_CTYPE'] = form.cleaned_data['campaign_type']
            request.session['MMANAGER_FORM_LOCATION'] = form.cleaned_data['location']
            return redirect(reverse('add_message'))
        else:
            #say whats not valid and return it
            form = messageForm1(request.POST)
            return render(request, self.template_name, {'form': form})



class AddMessage(View):

    template_name = "dash/AddMessage.html"
    form = messageForm2()

    def get(self, request, *args, **kwargs):
        return render(request, self.template_name, {'form': self.form})

    def post(self, request, *args, **kwargs):
        form = messageForm2(request.POST)
        if form.is_valid():
            campaign_type = request.session.get('MMANAGER_FORM_CTYPE')
            location = request.session.get('MMANAGER_FORM_LOCATION')
            ...
            return redirect(reverse('message_manager'))
        else:
            #say whats not valid and return it
            form = applicantsForm(request.POST)

            return render(request, self.template_name, {'form': form})

你确定你已经正确设置了HTML
form
action属性吗?这对我来说已经太久了,我甚至记不起这是干什么用的了,更不用说我是否修复了它。