Django: Как предварительно заполнить форму при использовании немодельных данных?

В моем случае приложение Django сохраняет и получает пользовательские данные во/из внешней службы через API. Я получаю объект с рядом пользовательских атрибутов, например. имя, адрес и т. д.

Для обновления такой информации я использую собственные формы Django с сокращенным форматом шаблона, скажем: {{ edit_account_form.as_p }}

Когда я отображаю форму для редактирования информации, я хотел бы предварительно заполнить ее данными из пользовательского объекта. Я знаю, что могу передать объект в шаблон и отобразить эти значения в val и заполнителе каждого поля ввода, однако для этого потребуется полностью воссоздать ввод формы путем ввода, чего я бы предпочел не делать.

Возможный?


person pete    schedule 23.01.2014    source источник


Ответы (1)


Используйте initial, чтобы объявить начальное значение поля формы во время выполнения. Например, вы можете заполнить поле имени пользователя именем пользователя текущего сеанса.

f = ContactForm(initial={'subject': 'Hi there!'})
person ndpu    schedule 23.01.2014