我试图将请求用户发送到Django窗体,问题是,当我通过GET metho发送对象时,Django窗体会很好地接收它,但是当我通过POST方法发送时,请求对象总是空的,下面是代码:
***************视图.py
class CreateRec(BaseView):
template_name = 'test/rec.html'
def get(self, request, **kwargs):
rec_form = RecForm(req_ses = request)
return render(request, self.template_name,{
'rec_form': rec_form, 'f_new': True,
})
def post(self, request, **kwargs):
user_rec = User.objects.get(username = request)
profile = profile_models.RecProfile.objects.get(cnxuser = user_rec)
form = RecForm(request.POST, request.FILES, req_ses = request)
return render(request, self.template_name,{
'rec_form': rec_form, 'f_new': True,
})
*********Form.py文件的片段:
class RecForm(forms.ModelForm):
def __init__(self, req_ses = None, *args, **kwargs):
super(RecForm, self).__init__(*args, **kwargs)
self.req_ses = kwargs.pop('req_ses', None)
user_rec = User.objects.get(username = req_ses.user)
profile = profile_models.RecProfile.objects.get(cnxuser = user_rec)
通过GET,req\u ses有对象,通过POST它说req\u ses它没有…..知道为什么吗??,我也试图发送user\u rec对象,但是得到了相同的结果
无需使用} 对象具有
req_ses
参数和查找request.user
所做的所有额外工作,因为^{user
属性以下是您的代码,并对其进行了一些简化,希望能解决问题:
表单.py:
视图.py:
更新
相关问题 更多 >
编程相关推荐