Найти - Пользователи
Полная версия: Значение по умолчанию для select
Начало » Django » Значение по умолчанию для select
1
Vasilych
Добрый день!

Есть следующая форма
class ObjectForm (forms.Form):
location = forms.ModelChoiceField(
Location.objects.all()
)
description = forms.CharField()
При рендеринге поле location отображается как Select и в него вносятся данные из модели Location при этом по умолчанию выбрано значение ‘—————-’, что при добавлении объекта есть хорошо. Когда же я пытаюсь редактировать объект и связываю форму с данными объекта, в Select по прежнему выбрано значение ‘————-’ . Как это изменить?
Александр Кошелев
Vasilych
Когда же я пытаюсь редактировать объект и связываю форму с данными объекта, в Select по прежнему выбрано значение ‘————-’ .
Согласитесь, что это вполне логично. Гадать он не умеет.
Vasilych
Как это изменить?
Надо указать начальное значение. Для этого есть initial для поля, либо для всей формы сразу - http://www.djangoproject.com/documentation/forms/#dynamic-initial-values. Туда лучше id текущего объекта Location указать.
Vasilych
Daevaorn
Vasilych
Когда же я пытаюсь редактировать объект и связываю форму с данными объекта, в Select по прежнему выбрано значение ‘————-’ .
Согласитесь, что это вполне логично. Гадать он не умеет.
Не очень если честно, как раз очень ожидаемо, что будет выбирать данные которые связаны с формой. :)

Daevaorn
Надо указать начальное значение. Для этого есть initial для поля, либо для всей формы сразу - http://www.djangoproject.com/documentation/forms/#dynamic-initial-values. Туда лучше id текущего объекта Location указать.
Dynamic initial values смотрел в первую очередь, но не понял как это работает, не могли бы Вы привести пример?
Vasilych
Получилось :)
qman
Vasilych
Получилось smile
код покажите! чтобы вопросы не флудить!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB