sql >> Databasteknik >  >> RDS >> PostgreSQL

Active Record:JSON Query

Detta:

#<ActiveRecord::Relation [#<Model id: 1, Model id: 2 ...>]

är resultatet av anropet inspect på frågan och inspect kommer bara att visa kolumner som modellen känner till. Modellen frågar efter kolumnerna i tabellen under uppstart så att den bara vet om kolumner som faktiskt finns i tabellen.

ActiveRecord skapar kolumnaccessormetoder i farten med method_missing så det kan skapa metodsaker i en fråga som inte är kolumner i den faktiska tabellen.

Så din data finns där behöver du bara fråga efter namnet, till exempel:

Model.select(:id, "json_field -> 'data' as data").map(&:data)

ger dig data värden.




  1. Var lagrar PostgreSQL konfigurations-/conf-filer?

  2. Tomcat JDBC MySQL ClassNotFoundException

  3. php 5.x 7.x, ssl pdo-fel:Peer-certifikat CN=`someName' matchade inte förväntat CN='someIP'

  4. Ändra tmp-mappen för mysql