首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flask-Admin:在外键上添加过滤器

Flask-Admin:在外键上添加过滤器
EN

Stack Overflow用户
提问于 2013-08-20 00:27:14
回答 1查看 3.3K关注 0票数 3

我正在使用Flask-Admin为我的应用程序创建一个后端接口。我想在管理视图中添加一些筛选器,但收到错误消息

代码语言:javascript
复制
'Exception: Unsupported filter type column_name'

其中,列名是外键的列字段。以前有没有人用过flask-admin?

以下是模型:

代码语言:javascript
复制
class Keywords(Base):
    id = Column(String(4), primary_key=True)
    language = Column(ForeignKey('w_accounts.language'))
    camp_type = Column(ForeignKey('w_camp_types.camp_type'))
class KeywordsAdmin(BaseAdmin):
   column_searchable_list = ('toa_id', 'name', 'toa')
   column_list = ('toa_id', 'language', 'camp_type', 'name', 'aliases', 'toa', 'toa_type')
   column_filters = ('language',) 

在浏览完API之后,我还尝试添加以下属性:

代码语言:javascript
复制
       column_select_related_list = ('language',)

当我在浏览器上加载页面时,不是立即得到一个错误,而是得到一个异常,

代码语言:javascript
复制
"AttributeError: 'ColumnProperty' object has no attribute 'mapper'"
EN

回答 1

Stack Overflow用户

发布于 2013-12-31 20:04:03

您必须添加关系。

代码语言:javascript
复制
class Keywords(Base):
    id = Column(String(4), primary_key=True)
    language = Column(ForeignKey('w_accounts.language'))
    camp_type = Column(ForeignKey('w_camp_types.camp_type'))

    language_ref = relationship("w_accounts", backref=db.backref('keywords', lazy='dynamic'))

然后:

代码语言:javascript
复制
column_select_related_list = ('language_ref',)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18318629

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档