我有一个 sqlalchemy 模型:
class Multicast(db.Model):
__tablename__ = "multicast"
id = Column(Integer, primary_key=True)
addr = Column(Inet)
name = Column(Unicode(65))
我需要通过“addr”字段进行搜索。 我不能这样做:
class MulticastView(ModelView):
column_searchable_list = ('name', 'addr',)
column_filters = ('name', )
model = Multicast
因为我有一个异常(exception):只能在文本列上搜索。无法设置“addr”搜索。我怎样才能进行此搜索?
最佳答案
我找到了一些解决方案。我重写了 MulticastView 中的 get_list 方法。我从 ModelView 复制了所有源代码,并在搜索条件代码中添加了一行:
filter_stmt.append(func.text(Multicast.addr).like(stmt))
它有效!
关于python - 在 Flask-admin 中搜索非文本列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26009081/