gpt4 book ai didi

python - Flask-Admin 和模型中的自定义字段

转载 作者:太空宇宙 更新时间:2023-11-04 01:13:26 25 4
gpt4 key购买 nike

我有类似于以下的表格:

class User(Base):
id = Column(Integer, primary_key=True)
name = Column(String(255, unique=True)

class Document(Base):
id = Column(Integer, primary_key=True)
name = Column(String(255, unique=True)
customer_id = Column(ForeignKey('User.id'))

我想列出 Flask-Admin 的 ModelView (sqla) 中的用户以及他们创建的文档数 (func.count(Document))。是否有可能在不指定自定义 SQL 查询的情况下使用 SqlAlchemy 和标准 Flask-Admin ModelView 来实现它?

最佳答案

您可以通过覆盖 ModelView 类的 get_query() 函数来完成此操作。这将创建您编写的查询的 View ,而不是定义的架构。

您可能还需要一个 user_document_table 作为查询中的连接。

例如:

class UserView(ModelView):

column_list = (
"user_name",
"n_documents"
)

def get_query(self):
return (
self.session.query(
User.name.label("user_name"),
func.count(Document.id).label("n_documents")
)
.join(user_document_table)
.join(Document)
.group_by(User.id)
)

关于python - Flask-Admin 和模型中的自定义字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26231570/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com