我一直在四处寻找,我想知道我是否做错了什么。只是为了仔细检查,我会问你们!
所以我收到了 params
在 Rails Controller 中。一 key, value
对是 :status => true/false
.但是,当我尝试发布 status
时,我发现作为一个字符串:status => "THIS IS NOT A BOOLEAN"
并在我的 Controller 中创建我的对象 :status
我的对象的属性变为 false
.
因此,rails 中是否有任何干净的方法来验证我的 :status
对应于 bool 值?
谢谢!
最佳答案
这个非常奇怪的方法会成功
def is_boolean?(item)
!!item == item
end
params[:status] = 'some string'
is_boolean?(params[:status])
# => false
params[:status] = true
is_boolean?(params[:status])
# => true
稍微更直观的版本是
def is_boolean?(item)
item == false || item == true
end
关于ruby-on-rails - 验证 Rails 中的参数类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25100119/