class Parent(db.Model):
id = db.Column(db.Integer, primary_key = True)
name = db.Column(db.String(120))
def __repr_(self):
return '<Parent %r>' % (self.name)
admin.add_view(ModelView(Parent, db.session))
class Child(db.Model):
id = db.Column(db.Integer, primary_key = True)
name = db.Column(db.String(120))
parent = db.Column(db.Integer, db.ForeignKey(Parent))
admin.add_view(ModelView(Child, db.session))
こんにちはを示していません。目標は、子の作成ページに名前のテキストボックスを表示し、親を選択するためのドロップダウンを持つことです。フラスコ-adminがForeignKeyの列
上記の設定では、名前欄のみがあります。親のドロップダウンボックスがありません。
どのようにすればいいのでしょうか?
すごいです!私は今夜それを試してみる。 primaryjoin/secondaryjoinの情報は必要ですか?私はそれについて多くの間違いを受けてきました。うまくいけばあなたの変更はすごくうまくいくでしょう! – screenshot345
正直、私は知りません。 Flask-AlchemyやFlask-Adminでprimaryjoin/secondaryjoinについて何も見たことがありません。 – Robin
なぜ動作するのか:Flask-Adminは、モデル、リレーションなどのORMオブジェクトで動作します。デフォルトでは、Flask-Adminはモデル内の外部キーを無視し、Flask-Adminは具体的なORMオブジェクトを必要とします。と。したがって、モデルに外部キーがある場合は、モデル間のORMレベルのリンク、つまり関係を忘れないようにしてください。 Flask-Adminは、このリンクを使用して関連するモデルを表示します。そして、いいえ、あなたは飾り気のないものをやる必要はありません。 – Joes