models.py
class User(db.Model):
user_id = db.StringProperty(required=True)
nickname = db.StringProperty(required=False)
email = db.StringProperty(required=False)
pic_url = db.StringProperty(required=False)
type_admin = db.BooleanProperty(default=False)
school = db.ReferenceProperty(School, collection_name='user_school')
class School(db.Model):
school_id = db.StringProperty(required=True)
school_name= db.StringProperty(required=True)
school_domain = db.StringProperty(required=False)
views.py
uform = UserForm(instance=user)
forms.py
class UserForm(djangoforms.ModelForm):
class Meta:
model = User
exclude = ['user_id']
html页面
{{ uform.school }}
这会在下拉列表中返回学校对象的列表。但是,我希望下拉列表中显示school_name
。
我怎么做?
答案 0 :(得分:2)
覆盖学校模型上的__unicode__
方法
class School(db.Model):
school_id = db.StringProperty(required=True)
school_name= db.StringProperty(required=True)
school_domain = db.StringProperty(required=False)
def __unicode__(self):
return self.school_name