2016-01-26 7 views
0

из Peewee документы:Метод peewee rank(), дающий отрицательные оценки. Он предназначен для этого?

Сформировать выражение, которое просчитывает и вернуть качество поиска матча. Этот ранг можно использовать для сортировки результатов поиска. Чем ниже ранг, тем лучше матч.

В настоящее время я тестирую функцию полнотекстового поиска, которую предоставляет Peewee. В документах упоминается, что более низкие баллы - это лучшие совпадения, но все, что я получаю, - это отрицательные оценки, он предназначен для возврата отрицательных оценок?

запрос:

query = (models.Post 
     .select(models.Post.title, models.Post.content, models.FTSPost.rank().alias('score')) 
     .join(models.FTSPost, on=(models.Post.id == models.FTSPost.post_id)) 
     .where(models.FTSPost.match(search_query)) 
     .order_by(models.SQL('score').desc())) 

ответ

1

Да, это дает отрицательные результаты, так что, когда вы заказываете по рангу (по возрастанию) вы получите результаты в правильном порядке.

Это может конфликтовать с тем, что вы нашли в моем блоге, например, поскольку более ранние версии этого не сделали и потребовали ранжирования по убыванию.

Но, в основном, если вы находитесь на более новой версии peewee, просто закажите по счету ASCending, и вам все будет в порядке.

 Смежные вопросы

  • Нет связанных вопросов^_^