1
User
モデルがありますが、これはSkills
ですが、Masteries
です。入れ子モデルのAlgolia_search
私はAlgoliasearchを使用してユーザーを取得するためにフォームを使用しています。特定のスキルを持つすべてのユーザーを取得したいと考えています(Internet Explorer、「Origami」スキルを持つ「John」というユーザーがいる場合、私は「ジョン」や「折り紙」を入力した場合、彼は、私は、ネストされたスキルをマッピングすることにより、そうしようとした
)結果に表示されるはずですが、これはここで
がモデル です動作するようには思えませんclass Creator < ActiveRecord::Base
include AlgoliaSearch
algoliasearch do
# all attributes will be sent
add_attribute :creator_skills
end
has_many :masteries
has_many :skills, through: :masteries
def creator_skills
self.masteries.map do |s|
{ name: s.skill.name }
end
end
[...]
フォームは、query
パラメータを返します。これは、イブのクリエイター:
@creators = Creator.where(display_index: true).algolia_search(params[:query]).shuffle
私は何かを見逃しましたか?ネストされたモデルをマップすることは可能ですか?
ドキュメントはそれを達成する方法について説明します。https://github.com/algolia/algoliasearch-rails#nested-objectsrelations – MrYoshiji
@MrYoshiji私が試した、これは動作しないようにそれはそう'' 'has_many_though'''の関係で –
この投稿はお役に立ちましたか?https://github.com/algolia/algoliasearch-rails/issues/31 – MrYoshiji