Flask-Admin:在"创建"中创建子对象和父对象。形成

时间:2015-04-28 21:58:29

标签: python flask sqlalchemy flask-admin

在我的Flask / SQLAlchemy应用程序中,我有SQLAlchemy类Parent和Child,其中有关每个Parent的所有有趣数据都在其子代中:

class Parent(Base):
    __tablename__ = 'parent'
    id = Column(Integer, primary_key=True)
    children = relationship(Child)

class Child(Base):
    __tablename__ = 'child'
    id = Column(Integer, primary_key=True)
    parent_id = Column(Integer, ForeignKey('parent.id'))
    name = Column(String)

我想在Flask-Admin UI中创建Parent,当我创建它们时,我希望能够同时创建它们的Child对象。当我去"创建"在默认的ModelView for Parent中,我只能从菜单中选择现有的Child对象,而不能创建新的。

例如,在创建每个父级时,我希望有一个文本字段,我可以在其中输入"名称"在Child对象中,当Flask-Admin创建Parent时,它还会在其" name"中创建具有这些值的Child对象。列。

Flask-Admin有可能吗?或者如果没有,我将如何自定义Flask-Admin ModelView来执行此操作?

1 个答案:

答案 0 :(得分:1)

我认为您正在寻找inline models

您可以在示例中使用它们:

class ParentModelView(ModelView):
    inline_models = (Child, )