한다고 가정 I 사용자 데이터가 해당 문자열 데이터 형식 애완 동물의 저장 배열레일 액티브 레코드 쿼리, 직렬화 된 배열
[
#<User id: 1, name: "John", pets: "---\n- cat\n- dog\n- bunny\n- ''\n">,
#<User id: 2, name: "Pete", pets: "---\n- dog\n- bunny\n- ''\n">,
#<User id: 3, name: "Jack", pets: "---\n- cat\n- ''\n">,
#<User id: 4, name: "Kurt", pets: "---\n- cat\n- bunny\n- ''\n">
]
내가 고양이를 가지고 모든 사용자를받을 수 있습니까? 어쩌면 User.find_all_by...
또는 User.where(....)
또는 관계로 반환하는 것과 같은 것일 수 있습니까? 그래서 나는 적극적인 레코드 질의로 주문할 수 있습니다.
나는 내가
User.all.select{|s| YAML.load(s.pets).include?'cat'}
와 고양이를 가지고 모든 사용자를 얻을 수 있습니다 알고 있지만, 액티브 레코드 쿼리와 함께 주문 할 수없는 배열을 변환합니다.
thx
검사 어떤 이유로이 문서 http://stackoverflow.com/questions/9814622/searching-serialized-data-using-active-record – hiphapis