2015-08-03 3 views
1

я имею форму сказать:Джанго экземпляра модели в форме без модели

class ProfileEditForm(forms.Form): 
    first_name = forms.CharField(max_length=20) 
    last_name = forms.CharField(max_length=20) 
    email = forms.EmailField(max_length=50) 
    address = forms.CharField(max_length=100) 

Я хочу передать экземпляр модели на него так, что, когда пользователь пытается изменить свой профиль, они получают свои существующие данные по форме.

По некоторым причинам я не использую ModelForm

позволяет сказать, что у меня есть экземпляру user = User.objects.get(pk=pk)

и я хочу передать экземпляр как форма = ProfileEditForm (экземпляр = пользователь)

Я гугл и нашел, что я может использовать только экземпляр с моделью, но могу ли я использовать его в форме тоже, что не из модели?

Спасибо

+0

Можете ли вы дать причины вы не используете ModelForm? Вам следует. –

+0

@ DanielRoseman, потому что мой руководитель так сказал. Он просто хочет использовать только форму. В любом случае, я могу это получить? – aryan

+0

Я не знаю, что за «супервизор» говорит вам использовать неправильный класс. Чтобы обновить экземпляр модели, используйте ModelForm. –

ответ

1

Попробуйте это:

user = User.objects.filter(pk=pk).values('first_name','last_name','email','address') 
form = ProfileEditForm(user[0]) 
Смежные вопросы