首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQLite3 3::SQLException:没有这样的列: parameters.user:

SQLite3 3::SQLException:没有这样的列: parameters.user:
EN

Stack Overflow用户
提问于 2015-10-20 22:23:37
回答 1查看 321关注 0票数 1

我正在将跟随的用户列表保存到db中,然后尝试获取当前用户是该列表一部分的记录,但继续获取此异常。

代码语言:javascript
复制
SQLite3::SQLException: no such column: parameters.user: SELECT "activities".* FROM "activities"  WHERE "parameters"."user" = 3

这是db中的一个记录。

代码语言:javascript
复制
=> #<PublicActivity::Activity id: 107, trackable_id: 16, trackable_type: "Shout", owner_id: 1, owner_type: "User", key: "shout.shout", parameters: {:user=>[3]}, recipient_id: nil, recipient_type: nil, created_at: "2015-10-20 21:44:41", updated_at: "2015-10-20 21:44:41", read: false>

这些是我尝试过的问题,给了我这个。current_user.id =3

代码语言:javascript
复制
PublicActivity::Activity.where({'parameters.user' => current_user.id})

PublicActivity::Activity.where(parameters: {user: current_user.id})

所以。如何获得当前用户是该用户列表的一部分的记录?另外,我能在Mysql中使用相同的查询吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-20 23:02:44

这似乎是一个愚蠢的问题,但是参数列是否定义为模型中的序列化列?有了像MySQL和(我相信) SQLite这样的适配器,您就不能查询序列化的字段。因此,如果您想要查询它,则需要将其与序列化字段分开保存。

尽管如此,使用PostgreSQL及其rails适配器,您可以查询序列化的字段。

你应该看看这个SO questionthis anser

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33247850

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档