Я пытаюсь воспроизвести запрос поиска mysql в коде модели rails (AR). Я попытался несколько сообщений в inte rnet, но ни один из них не работал для меня.
Вот запрос mysql:
SELECT id, title, content, created_at, match(title) against ('alpha' in natural language mode) AS score FROM users.hubspot_blog_posts
where match(title) against ('alpha' in natural language mode) order by score desc, created_at desc;
Идея состоит в том, получить все заголовки, которые соответствуют шаблону поиска, и упорядочить их сначала по количеству баллов, а затем (если счет равен) по дате созданного_атта.
Хотя приведенный выше запрос работает, как я хочу, я не смог переведите это в код рельсов. Вот что я попробовал, я получаю ту же коллекцию, но с другим oredre:
HubspotBlogPost.select("*, MATCH(title) AGAINST ('alpha' in natural language mode) AS score").where("MATCH(title) AGAINST('alpha' in natural language mode)", :order => "score desc, created_at desc")
С Mysql, если score
идентичен, заказ выполняется по дате ( made_at), но код ruby не волнует.
Пожалуйста, исправьте меня и, если возможно, дайте мне знать, где я ошибаюсь?