So wählen Sie mit ActiveRecord @ nur einen Teil von json aus, der in Postgres gespeichert i
Sag ich habe ein ModellUser
, das ein Feld vom Typ @ hjson
namenssettings
. Nehmen wir an, dass dieses Feld ungefähr so aussieht:
{
color: 'red',
language: 'English',
subitems:
{
item1: true,
item2: 43,
item3: ['foo', 'bar', 'baz']
}
}
Wenn ich macheUser.select(:settings)
Ich bekomme alle Einstellungen für jeden Benutzer. Ich möchte aber nur die Sprachen für einen Benutzer bekommen. Ich habe beide ausprobiert:
User.select("settings -> 'language'")
un
User.select("settings ->> 'language'")
, aber dies gibt nur leere Objekte zurück:
[#<User:0x007f381fa92208 id: nil>,
...]
Ist das überhaupt möglich? Wenn ja - kann ich es mit nur @ tjson
oder muss ich zu @ wechsejsonb
?