だから、私はこれを見つけました:SearchlogicOR条件は未定義のメソッドになります
ただし、これは、直接検索しているモデルのフィールドに対してのみ機能します。サブスクリプションモデルがありますが、たとえば、さまざまなサブスクリプションのアカウント名または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)