Я пишу форму редактирования, где некоторые поля уже содержат данные. Пример:
class EditForm(forms.Form):
name = forms.CharField(label='Name',
widget=forms.TextInput(),
initial=Client.objects.get(pk=??????)) #how to get the id?
То, что я сделал для другой формы, было следующим (что не работает в случае предыдущей EditForm):
class AddressForm(forms.Form):
address = forms.CharField(...)
def set_id(self, c_id):
self.c_id = c_id
def clean_address(self):
# i am able to use self.c_id here
views.py
form = AddressForm()
form.set_id(request.user.get_profile().id) # which works in the case of AddressForm
Так, каков наилучший способ передать идентификатор или значение в форму, и это можно использовать во всех формах для этого сеанса / пользователя?
Второе: правильно ли использовать начальное значение для заполнения поля формы так, как я пытаюсь это сделать?