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属性吗?这对我来说已经太久了,我甚至记不起这是干什么用的了,更不用说我是否修复了它。