Итак, я нашел это: Условие Searchlogic ИЛИ приводит к неопределенному методу
Но это работает только для полей в модели, которую вы ищете напрямую.У меня есть модель подписки, но я хочу выполнить поиск по именам учетных записей различных подписок ИЛИ их other_field, например.
по вышеуказанной ссылке (и измененной), я хотел бы иметь возможность сделать что-то подобноена это:
named_scope :account_name_full_domain_like, lambda{ |name|{
:conditions => ["accounts.name LIKE ? OR accounts.full_domain LIKE ?", "%" + name + "%", "%" + name + "%"],
:joins => "LEFT JOIN `accounts` ON `accounts`.id = `subscriptions`.account_id"
}}
но теперь я получаю сообщение об ошибке:
27: <% form_for @search do |f| %>
undefined method `subscription_subscription_path' for #<ActionView::Base:0x11061dbc0>
РЕДАКТИРОВАТЬ: понял: пришлось включить .search в мой вызов для назначения @searchвар
@search = Subscription.search.account_name_full_domain_like(term)