Ruby on rails 如何在ruby on rails中查询Postgresql HSTORE
我需要找到一个类型面试用户的所有通知Ruby on rails 如何在ruby on rails中查询Postgresql HSTORE,ruby-on-rails,postgresql-9.1,hstore,Ruby On Rails,Postgresql 9.1,Hstore,我需要找到一个类型面试用户的所有通知 app/models/notification.rb: 类通知新闻稿=:值”,值:'true') 我试过了 user.notifications.where('data->type=:key',key:Interview::NOTIFICATION\u type) 但我得到了一个错误: ***ActiveRecord::Statement无效异常:PG::UndefinedColumn:错误:列“类型”不存在 第1行:…其中“通知”。“用户id”=$1和
app/models/notification.rb
:
类通知
在谷歌搜索没有太多的信息,所以
我遵循了:但无法按照示例中的说明查询数据库:
User.where(“首选项->新闻稿=:值”,值:'true')
我试过了
user.notifications.where('data->type=:key',key:Interview::NOTIFICATION\u type)
但我得到了一个错误:
***ActiveRecord::Statement无效异常:PG::UndefinedColumn:错误:列“类型”不存在
第1行:…其中“通知”。“用户id”=$1和(数据->类型=”。。。
^
:从“通知”中选择计数(*),其中“通知”。“用户id”=$1和(数据->类型=“采访”)`
查询HSTORE的正确方法是小心键周围的单引号,如下所示:
user.notifications.where(
“数据->‘类型’=:键”,
关键字:面试::通知类型
).伯爵