2014-01-16 34 views
0

我想将两个窗体发布到一个窗体中,其中一个窗体包含一个字段,该字段是另一个窗体的模型的外键。如何隐藏外键字段,并在Django的视图中填充它

我可以从窗体隐藏外键字段,但是当我尝试保存第二种形式

formData = ThisForm(request.POST) 
formData.save() 

我收到以下错误消息

field_id may not be NULL 

即使我尝试分配保存前的字段

name = firstForm.cleaned_data['field'] 
formData.creator = name 

任何人都有正确的方法来实现这个想法?

感谢

UPDATE: 从下面的答案的帮助,这就是到底

f1 = Form1(request.POST) 
f1.save() 
x = f1.cleaned_data 

f2 = Form2(request.POST) 
y = f2.save(commit=False) 
n = FirstClass.objects.get(the_field= x["the_field"]) 
y.the_field = n 
y.save() 
+0

哈工作,我做了同样的事情 - 要保存会话用户或其他什么到现场?我甚至称它为创作者。 –

回答

1
obj = formData.save(commit=False) 
obj.creator = whatever 
obj.save() 
+0

谢谢你的帮助Daniel:D – holmeswatson

相关问题