2013-06-05 63 views
0

我想获取ModelForm的属性。 其实我创建一个ModelForm(request.POST)对象,然后使用for-loop来获取ModelForm的字段。但我只是提到这个对象的引用而不是内容。我能做什么?Django获取ModelChoiceField对象的内容

forms = FormSet(request.POST, prefix='probe') 
    for form in forms: 
     form.fields['some_id'] 

有了这个代码,我得到的一些东西是这样的:

<django.forms.models.ModelChoiceField object at 0x034705B0> 

做对某人现在我怎么得到这个对象的内容?

+2

你想做什么? – karthikr

+0

它看起来像你想要使用窗体的'cleared_data'属性。无论如何,一旦你验证了它。你正在得到你所要求的 - 字段对象 - 但是从上下文我猜你正在试图获得选择的模型实例,并且将在form.cleaned_data ['some_id']中。 –

+0

我想要在ModelChoiceField中获取selectet选项。因为我将保存一个m2m关系,而不是数据库中表单的新对象。 – Andreas

回答

1
if form.is_valid(): #validate the form 
    cleaned_data = form.cleaned_data 
    print cleaned_data['some_id'] #print out the choice 
+0

我试了一下,但它不工作.. – Andreas

+0

@ user2457241什么不行?你有'else'吗? – Neal

+0

当我打印选择时,我什么都没有。 – Andreas