ruby-on-rails – Rails MySql上的复选框存储为null或零

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails MySql上的复选框存储为null或零前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在我的rails应用程序上,我有一个项目列表(如任务列表),每个项目都有一些复选框来设置参数.

当我提交表单时,复选框将存储为零,并且在DB上未选中为null.

问题是:有没有办法配置它?要将数据存储在更传统的0或1上,因为我认为将null存储为false,将0存储为true有点令人困惑,特别是如果另一个应用程序(如C应用程序)需要读取数据.

解决方法

让我们假设你正在使用的属性是club_member,如“你是一个俱乐部成员吗?”.

请注意,在Ruby / Rails中,它现在的工作方式,如果未检查model.club_member将返回false(值为null或在Ruby中为nil),如果选中它则为true(值为0).

总的来说,我强烈建议您不要直接在数据中使用其他应用程序(如C应用程序),而应在Ruby / Rails中构建一个API,以便将应用程序中的数据公开给外部实体.通过这种方式,您将更好地封装应用程序的内部,您不必担心这样的事情.

然而,所有这一切,这里是你的答案:

使用:

value="1"

复选框HTML标记中的…属性,并将布尔属性的默认值(在迁移中)设置为0.

原文链接:https://www.f2er.com/ruby/268068.html

猜你在找的Ruby相关文章