Angenommen, ich habe Benutzer Daten, dass die Speicher-Array von PET in String-DatentypRails aktive Datensatz Abfrage, serialisierte Array
[
#<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">
]
Kann ich alle Benutzer bekommen, die eine Katze hat? Vielleicht etwas wie User.find_all_by...
oder User.where(....)
oder alles, was als eine Beziehung zurück? So kann ich mit aktiver Datensatzabfrage bestellen.
Ich weiß, ich kann alle Benutzer erhält, die eine Katze mit
User.all.select{|s| YAML.load(s.pets).include?'cat'}
hat, aber es Array umwandeln, die nicht mit aktiver Datensatz Abfrage bestellt werden.
thx für die Hilfe.
Überprüfung dieser Artikel http://stackoverflow.com/questions/9814622/searching-serialized-data-using-active-record – hiphapis