【发布时间】:2018-03-03 15:40:26
【问题描述】:
我正在使用 postgres 数据库处理 python,我有两个具有多对多关系的表和第三个保存关系的表,我需要在关系表上应用 flask-msearch 以获取和搜索两个表并给出结果输出,我已经在单个表上实现它在那里工作正常但不能在多对多关系中工作
这是我工作正常的模型
class JobpostJobpost(db.Model):
__tablename__ = 'jobpost_jobpost'
__searchable__ = ['company_name']
id = db.Column('job_id', Integer, primary_key=True)
company_name = db.Column(String(255))
& 搜索我必须使用这个查询
JobpostJobpost.query.msearch(query,fields=['company_name'])
它给出了准确的结果,但是当我将它用于多表时,它在这里给出了错误,我的多表模型代码
类 TblDegreeSpecilizationRelation(db.Model): __tablename__ = 'tbl_degree_specilization_relation' __searchable__ = ['tbl_suggestion_degrees.name','tbl_suggestion_degrees.tags'] # ,'tbl_suggestion_degree_specilization.name' ,'tbl_suggestion_degree_specilization.tags' id = db.Column('id', Integer, nullable=False, primary_key=True) degree_id = db.Column('degree_id', ForeignKey(u'tbl_suggestion_degrees.id', ondelete=u'CASCADE')) specilization_id = db.Column('specilization_id', ForeignKey(u'tbl_suggestion_degree_specilization.id', ondelete=u'CASCADE'))【问题讨论】:
-
我已经解决了这个问题,我在 Searchable 中添加了表名和 .columnname,我只是添加了 degree = relationship(u'TblSuggestionDegrees',backref=db.backref(' post', uselist=False), uselist=False) in 然后我在 searchable 中添加了 degree.name 和 degree.tags 并且它在正确的输出下正常工作。
标签: python postgresql flask flask-whooshee