2013-06-05 2 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> 

Do кто-то теперь, как я получаю содержание этого объекта?

+2

Что вы пытаетесь сделать? – karthikr

+0

Похоже, вы хотите использовать атрибут 'cleaned_data' формы. В любом случае, если вы его проверили. Вы получаете именно то, что вы просили - объект поля, но из контекста я предполагаю, что вы пытаетесь получить выбранный экземпляр модели, и это будет в form.cleaned_data ['some_id']. –

+0

Я хочу получить опцию selectet в ModelChoiceField. Потому что я сохраню отношение 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

@ пользователь2457241 что не работает? У вас есть 'else'? – Neal

+0

Когда я печатаю выбор, я ничего не получаю. – Andreas

Смежные вопросы