Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在db列中存储逗号分隔列表,如何获取和设置?_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 在db列中存储逗号分隔列表,如何获取和设置?

Ruby on rails 在db列中存储逗号分隔列表,如何获取和设置?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我想在数据库列中存储逗号分隔的列表,如: 234234,2134234,2453245,2345 然后,我想获取此列表,并在如下查询中使用它: u = User.find("where some_id in (?)", my_comman_seperated_list) 我必须把它转换成一个数组,对吗?这是不是因为它必须在一列中,而不是作为一个单独的表?为存储在该列中的数据创建一个新模型,然后在每行中存储一个值,该值属于:user将您的列定义为text,并在ActiveRecord中声明该列

我想在数据库列中存储逗号分隔的列表,如:

234234,2134234,2453245,2345
然后,我想获取此列表,并在如下查询中使用它:

u = User.find("where some_id in (?)", my_comman_seperated_list)

我必须把它转换成一个数组,对吗?

这是不是因为它必须在一列中,而不是作为一个单独的表?为存储在该列中的数据创建一个新模型,然后在每行中存储一个值,该值属于:user

将您的列定义为
text
,并在ActiveRecord中声明该列为序列化列:

serialize :my_column

现在,该列将存储为
[234234234213424532452345]
,当您获得该对象时,该属性将是一个数组,您可以将其传递到查找中。

我正在对其进行反规范化,原因是:)