class User < ActiveRecord::Base
has_many :followings, :as => :followable, :dependent => :destroy, :class_name => 'Follow'
has_many :follows, :as => :follower, :dependent => :destroy
define_index do
has follows.followable(:id), :as => :followable_id
has followings.follower(:id), :as => :follower_id
has follows.followable(:type), :as => :followable_type
has followings.follower(:type), :as => :follower_type
end
end
질문 : I 형 (항상 빈 배열)에서 검색 할 수 없습니다. 벌레? 추종자가 'AAA'유형 인 모든 사용자를 얻고 싶습니다.레일 + 생각 - 스핑크스의 다형성 연관
User.search ''=이>와 {: follower_type =이> 'AAA'}
질문 : 왜 (인덱스 정의) 올바른 결과를 얻을 내 관계를 반전해야합니까 : 다음과 (: id), 다음과 같이 (: id), : as => : followable_id 대신 followable (: id), : as : followable_id id = 1 인 사용자에 대한 팔로어 목록을 얻고 싶습니다.
User.search : with => {: followable_id => 1} # id가 1 인 사용자의 추종자 목록
Thx!
@pat Ths your answare! 데이터베이스에 대해서는 다음 플러그인을 참조하십시오 : https://github.com/xpepermint/acts_as_followable. 모델이 복사됩니다 (두 번째 질문 용). – xpepermint
@pat 또한 첫 번째 질문에는 "CRC32 (follows.followable_type)"이 있어야합니다. : as :> : followable_type, : type => : integer "인덱스 정의가 올바 릅니까? 작동 안함. – xpepermint
': type => : multi'를 시도하십시오 - 정수의 배열을 다루고 있습니다. 그리고 필터는': with = = {{followable_type => 'AAA'.to_crc32}'이어야합니다. – pat