ActiveRecord pluck sur un attribut jsonb

Pluck

Pluck permet de récupérer dans un Array, la totalité des champs spécifiés correspondant au scope ActiveRelation, dans l'exemple ci-dessous les noms et les ids.

Article.all.pluck(:nom, :id)

Pluck avec jsonb

Imaginons que notre modèle Article ait un champ JSONB ar_jstore avec un attribut nom_traduit et que nous souhaitions les récupérer, voici comment faire

Article.all.pluck(Arel.sql("(ar_jstore->'nom_traduit')"))

J'espère que ça vous servira ;)