高度な検索のために、モデルにアクティブレコードクエリを書き込もうとしています。
私は会社モデルを持っており、各会社には分類による多くのカテゴリーがあります
現在、検索方法には次のものが組み込まれています。
def find_firms
firms = Firm.order(:name)
firms = firms.where("name like ?", "%#{name}%") if name.present?
firms = firms.categories.find(id: category_id) if category_id.present?
end
私のカテゴリスキーマは次のようになります。
create_table "categories", :force => true do |t|
t.text "name"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
と私の分類
create_table "categorizations", :force => true do |t|
t.integer "category_id"
t.integer "firm_id"
t.datetime "created_at", :null => false
t.datetime "updated_at", :null => false
end
と私の検索フォームビュー
<div class="field">
<%= f.label :category_id, "Practice Area" %><br />
<%= f.collection_select :category_id, Category.order(:name), :id, :name, include_blank: true %>
</div>
私が間違っていることについて何か考えはありますか?
エラーが発生し続けると:
undefined method `categories'
どうもありがとう。
ロス