【发布时间】:2017-07-06 01:54:15
【问题描述】:
我有一个对象@recipient,其属性为responding。比如说,我希望responding 通过=f.check_box :responding, {}, 'Yes', 'No' 存储“是”或“否”,docs 表示这是可能的。
表单提交Yes 或No,PostgreSQL UPDATE 语句按预期使用Yes 或No(我在$ rails server 终端窗口中看到)。但是 - 无论responding 属性的数据类型(布尔型或字符串)如何 - 最终存储在数据库中的始终是true 或false。我很困惑。幕后发生了什么?如何强制 Rails 存储 Yes 或 No?我应该(不)吗?我是不是误会了什么?
【问题讨论】:
-
d/b 模式中的“响应”字段是什么数据类型?
-
responding属性是数据库中的字符串字段。 -
你确定它是一个字符串吗?表的架构是什么样的?
-
是的,我很确定;架构读取:
t.string "responding", limit: 255. -
当然,我刚刚取消删除它。
标签: ruby-on-rails postgresql checkbox rails-activerecord