Rails中的序列化复选框

时间:2011-07-18 15:41:46

标签: ruby-on-rails postgresql

我想在我的一个模型中添加7个复选框(布尔值)。

有没有办法在我的数据库中创建类似bool数组的东西,而不是手动添加7个不同的列?

哦,我正在使用pg数据库

2 个答案:

答案 0 :(得分:1)

取决于您希望编辑bool的频率(以ajax等形式)。你可能最好留在单独的专栏。只是因为f.check_box:column_name与f.object.column_name.each_pair ...控制器发布时的类似情况。我只能想到在哈希中添加序列化的7个复选框并将其存储在如果您的7个复选框可以动态更改,则可以使用一列。

答案 1 :(得分:0)

是。

CREATE TABLE array_test (
     bools bool[]
);

不是说我推荐这种方法。通常,您可以使用映射表或多列来实现索引,语义清晰度以及实施正确的数据完整性。但是,如果你正在权衡这个,我假设你知道危险,否则你将学到你的教训。然而,有一些罕见的情况,这是有道理的....