Python Flask管理员:如何显示所有字段
我有不同的集合(即表),它们有不同的列,比如集合A有cols a1和a2,集合B有b1和b2。我要显示所有列 追随Python Flask管理员:如何显示所有字段,python,flask,flask-admin,Python,Flask,Flask Admin,我有不同的集合(即表),它们有不同的列,比如集合A有cols a1和a2,集合B有b1和b2。我要显示所有列 追随 class UserView(ModelView): column_list = None 也 得到 NotImplementedError 如何显示所有字段 我是说 column_list = ('a1','a2','b1','b2') 工作正常,但我不希望在查看集合A时看到空的b1和b2字段。在Flask Admin中,继承ModelView的一个类通常表示一个
class UserView(ModelView):
column_list = None
也
得到
NotImplementedError
如何显示所有字段
我是说
column_list = ('a1','a2','b1','b2')
工作正常,但我不希望在查看集合A时看到空的b1和b2字段。在Flask Admin中,继承ModelView的一个类通常表示一个SQLAlchemy模型。如果多个表的列通过关系或混合属性连接,则可以在一个视图中显示这些列。ModelView主要用于向模型中添加基本CRUD操作 因此,在您的情况下,您应该有两个类和两个视图
class AView(ModelView):
column_list('a1', 'a2') #also if you don't add the column list
#property, all columns except primary key will be shown
class BView(ModelView):
column_list('b1','b2')
app.add_view(AView(db.session, category='Models'))
app.add_view(BView(db.session, category='Models'))
请参见此示例:
希望这有帮助
如果您不想显式列出定义构造函数的所有列
如下所示,将显示表中的所有列(PK除外)
class AView(ModelView):
def __init__(self,session, **kwargs):
super(AView, self).__init__(ModelName,session,**kwargs)
您可以用模型类的名称替换模型名。我想可能有一个输入错误column_list=('a1','a2')这是可行的,但是在您的评论中,您说如果我不添加column list属性,所有列都应该显示出来。你是说只写类视图(ModelView)?你能给我一个例子吗?我编辑了答案并添加了一个没有列列表属性的例子。我没有模型类,我使用的是pymongo,没有ODM或ORM。我理解。不幸的是,我不知道如何用pymongo实现这一点。
class AView(ModelView):
def __init__(self,session, **kwargs):
super(AView, self).__init__(ModelName,session,**kwargs)