1
1
这样做的问题是,在一段时间内,对象中会存在非规范化的东西;如果您有代码在东西规范化之前处理属性,那么这将是一个问题。 您可以定义一个setter:
不幸的是,我认为很多Rails表单的东西都直接编写属性,这也是我不喜欢使用它的原因之一。 或者您可以在传递参数之前使控制器中的参数正常化。 |
2
8
http://github.com/mdeering/attribute_normalizer 这似乎是解决这个常见问题的一个有希望的办法。以下是主页上的几个示例:
因此,在您的案例中,您可能会这样做:
|
3
4
我认为你做得对。此测试通过:
我用了你的密码。
现在,我的模式是将数字设置为字符串,而不是整数。
如果您想将它作为一个整数存储在数据库中,那么您肯定需要重写setter:
如果您按自己的方式进行,使用整数列,它会被ar…截断。
这是一个鲜为人知的关于红宝石和整数的东西…它通过截断不再是整数的任何内容来自动强制转换。
对这样的事情很酷
但对你所做的并不那么酷。 因此,要么将col更改为字符串并使用过滤器,要么更改setter:。 祝你好运! |
4
0
Ruby是否允许您在之间进行交换?和[’]? 我不知道,我稍后再试,但我想你应该用。
|
5
0
您应该从您的before-validation方法返回true,否则,如果分配给self[‘theNumber’]的表达式最终为nil或false,则不会根据rails文档保存数据:
表面上,您试图在这里规范化,然后使用Rails验证检查规范化的结果,这将决定nil/false/blank是否正常。
|
Animesh Arya · 关联模型的Rspec 2 年前 |
Kellen · 查看$卷展栏功能列表 2 年前 |
Akshit Thakur Ak · 我怎样才能把铁轨停下来? 2 年前 |
solidsnake99 · Rails db:如何绕过验证 2 年前 |
Spyros · 从数组中删除nil值,并从引用数组中删除相应的项 2 年前 |
Pauli-E · 当div打开并滚动到屏幕上时,向div添加类 2 年前 |
ejoka · 如何使用Rails 7模型属性作为CSS标记值 2 年前 |