ruby-on-rails - 如何获得一组单选按钮来接受 NULL(未选中)?

标签 ruby-on-rails ruby activerecord

我正在开发一个 Rails 应用程序,其中有一组两个单选按钮,用户可以在其中单击"is"或“否”。 ActiveRecord 迁移创建的 MySQL 数据库列是一个 tinyint。

如果用户没有单击任何一个单选按钮,我希望 MySQL 存储 NULL。 (该列允许 NULL。)当他们回来编辑数据时,不应选中这两个按钮。

发生的事情是 ActiveRecord 正在存储 0,然后当我返回时选中“否”按钮。

rails 2.3.5

表单代码(我使用的是 Haml):

        = f.radio_button( :model_attribute, true )
        Yes

        = f.radio_button( :model_attribute, false )
        No

(回想起来,使用单个复选框可能会更好,但现在很难更改。)

最佳答案

我在使用 ASP.NET MVC 时遇到了这样的问题。由于 null 本质上是第三种可能的状态,因此我添加了第三个默认选中的隐藏单选按钮。当我的响应包含“空”单选按钮响应时,我手动设置它。我不确定这是否正是您想要的,但它对我的情况非常有效。

关于ruby-on-rails - 如何获得一组单选按钮来接受 NULL(未选中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2503456/

相关文章:

Ruby Net-SFTP 无响应

ruby-on-rails - ruby 关于attr_accessor、实例变量、局部变量

ruby-on-rails - 使用嵌套路由进行渲染时出错

ruby-on-rails - 有没有更 ruby 的方式来做这个逻辑

ruby-on-rails - 刚开始学习rails。现在要做什么?

javascript - 在 haml javascript block 中插入 ruby​​ if 语句

Ruby 'pg' gem 链接到 libpq.5.dylib 的错误副本(在 OSX 上)

ruby-on-rails - Rails - 如何获取当前更新记录的 ID(使用 "update_all")?

database - Yii2 + Redis 作为数据库

mysql - Rails - 选择关联参数,但参数 "changing"持续存在