我的应用程序有一个表单,用户填写并提交该表单以向数据库提交条目。 我有3个forms.ModelChoiceFields基于models.ForeignKey。 我通过我的观点将它们设置为初始值,其中2个按预期工作。 但是,第3个下拉列表使用2个字的元定义作为显示,名字和姓氏。我似乎无法弄清楚如何通过调用2个单词来初始填充表单。
#in views.py
form = EmployeeForm(initial={'facility':'None' # this works
'supervisor':'_ None'} # does not work
对于facility,None是db中的字符串条目,而不是None“value” 对于主管,_ None是db
中的名/姓 #part of class Facility
def __ unicode__ (self): #had to added spaces for _ _ to show here
return self.fac_name
#part of class Supervisor
def __ unicode__ (self): #same syntax note as above
return u'%s %s' % (self.first_name, self.last_name)
下拉填充并正确提交 - 我唯一的问题是为主管设置初始值。如何使用两个名称调用初始值?
答案 0 :(得分:0)
您需要使用正确的名/姓作为初始值传递实例:
default_supervisor = Supervisor.objects.get(first_name='_', last_name='None')
form = EmployeeForm(inital={'supervisior': default_supervisor})