diff --git a/bookie/models/fulltext.py b/bookie/models/fulltext.py index bffe89bd..63ca80d3 100644 --- a/bookie/models/fulltext.py +++ b/bookie/models/fulltext.py @@ -119,6 +119,10 @@ def _mysql_postgres_search(phrase, content=False, username=None): if username: qry = qry.filter(Bmark.username == username) + bid_filter = DBSession.query(Bmark.bid.distinct()).\ + filter(or_(*filters)) + qry = qry.filter(Bmark.bid.in_(bid_filter)) + if content: LOG.debug('searching with content') readable = aliased(Readable) @@ -128,10 +132,6 @@ def _mysql_postgres_search(phrase, content=False, username=None): filters.append(readable.content.match(phrase)) - bid_filter = DBSession.query(Bmark.bid.distinct()).\ - filter(or_(*filters)) - qry = qry.filter(Bmark.bid.in_(bid_filter)) - qry = qry.join(Bmark.tags).\ options(contains_eager(Bmark.tags))