PG :: UndefinedTable:错误:缺少表的FROM子句条目

时间:2016-05-06 07:29:34

标签: ruby-on-rails json database ruby-on-rails-4

我有一个包含A列的表name(string), email(sring) and details(json)。我想像这样使用first_or_create:

A.where(:name => a.name, :email => a.email, :details => a.details).first_or_create

但这会产生以下错误:

PG::UndefinedTable: ERROR: missing FROM-clause entry for table "details"

如果我们有一个json类型的列,我们不能像上面那样查询吗?

1 个答案:

答案 0 :(得分:1)

我明白了。事实证明,对于JSON,查询将如下所示:

A.where("name=? and email=? and details->>'key1'=? and details->>'key2'=?", a.name, a.email,a.details["key1"],a.details["key2"])

http://edgeguides.rubyonrails.org/active_record_postgresql.html#json