カテゴリ モデルに属する製品モデルがあります。検索クエリに基づいてカテゴリ別にグループ化された結果を取得したい:
Games # Category
Mario Gallaxy # product ...
Paper Mario
Mario Bros
DVDs
Anamaniacs
Buggs Bunny
カテゴリを名前で並べ替えてから、製品を名前で並べ替える必要があります。これは可能ですか?私はこれを書きましたが、名前でグループ化し、またはオブジェクトの配列を返すだけで、メソッドを呼び出すことはできません:
# product.rb
def self.search(query)
if query.present?
includes(:category).where("products.name @@ :q", q: query).group_by(&:name)
else
scoped
end
end
私は Rails 4 を使用しています。あいまいさもあります: Category.name
and Product.name
.