Django - урегулирование начального условия ForeignKey / ModelChoiceField - PullRequest
0 голосов
/ 02 ноября 2010

Мое приложение имеет форму, которая заполняется и отправляется пользователем для отправки записи в базу данных. У меня есть 3 формы. ModelChoiceFields на основе моделей. ForeignKey. Я устанавливаю для них начальные значения с моей точки зрения, и 2 из них работают как задумано. Тем не менее, в третьем раскрывающемся списке используется мета-определение из 2 слов в качестве дисплея, имени и фамилии. Я не могу понять, как изначально заполнить форму, вызвав 2 слова.

#in views.py <br/> form = EmployeeForm(initial={'facility':'None' # this works<br/> 'supervisor':'_ None'} # does not work

Для объекта None - это строковая запись в БД, а не None "значение" Для супервизора _ None - это запись имени / фамилии в db

#part of class Facility<br/> def __ unicode__ (self): #had to added spaces for _ _ to show here<br/> return self.fac_name

#part of class Supervisor<br/> def __ unicode__ (self): #same syntax note as above<br/> return u'%s %s' % (self.first_name, self.last_name)

Раскрывающиеся списки заполняются и отправляются правильно - единственная проблема, которую я имею, - это установить начальное значение для руководителя. Как мне вызвать начальное значение с двумя именами?

1 Ответ

0 голосов
/ 02 ноября 2010

Вам нужно будет передать экземпляр с правильным именем / фамилией в качестве начального значения:

default_supervisor = Supervisor.objects.get(first_name='_', last_name='None')
form = EmployeeForm(inital={'supervisior': default_supervisor})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...