Я добавил дополнительное поле clan
в ModelView
класса Matriline
и добавьте его в столбцы в виде списка, как показано ниже.Как установить значение дополнительного поля в виде списка?
Как установить значение дополнительного поля clan
в виде списка?
views.py
class MatrilineAdmin(sqla.ModelView):
form_extra_fields = {
'clan': SelectField('Clan',
coerce=int,
choices=[ (c.id, c.name) for c in Clan.query.all()])
}
create_template = 'admin/create.html'
edit_template = 'admin/edit.html'
column_list = ('name', 'pod', 'clan')
models.py
class Matriline(db.Model):
__tablename__ = 'matriline'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode(64))
calls = db.relationship('Call', backref='matriline', lazy='select')
pod_id = db.Column(db.Integer, db.ForeignKey('pod.id'))
def __unicode__(self):
return self.name
def __str__(self):
return self.name
class Pod(db.Model):
__tablename__ = 'pod'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode(64))
matrilines = db.relationship('Matriline', backref='pod', lazy='select')
clan_id = db.Column(db.Integer, db.ForeignKey('clan.id'))
def __unicode__(self):
return self.name
def __str__(self):
return self.name
class Clan(db.Model):
__tablename__ = 'clan'
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Unicode(64))
pods = db.relationship('Pod', backref='clan', lazy='select')
def __unicode__(self):
return self.name