我有一段代码可以在单击相应的复选框时启用或禁用选择列表,但是如果它们在发布时都被禁用,它不会将它们发送到参数列表中。所以只有当它们存在时我才需要执行代码。
我用过:
if params[:id][:id2].nil?
和
if params[:id][:id2].blank?
还有
if params[:id][:id2].empty?
更不用说简单了:
if params[:id][:id2]
并且都给出了同样的错误...“你有一个你没有预料到的 nil 对象。”我该如何解决这个错误?
最佳答案
可能 params[:id]
为 nil,请检查 params[:id].nil?
。
编辑: 下面的评论正确地指出,如果您寻求针对 nil?
或 empty 进行评估,
。blank?
会更好?
关于ruby - 如果 object 在 Rails 中为 nil,如何跳过一段代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6653584/