首页 > 解决方案 > 除非设置参数,否则为什么 Ruby 会为此抱怨?

问题描述

这是我的声明:

unless (parameter.values.any? "" || parameter.values.any? 0 || parameter[:num_units].eql? 0 || parameter[:num_units].nil? || parameter[:num_units].empty?)

这是我得到的错误:

: syntax error, unexpected tINTEGER, expecting ')' ...? "" || parameter.values.any? 0 || parameter[:num_units].eql... ... ^ 

编辑 1

基本上我要做的是检查传入的任何参数的值是否是nil,""0.

标签: ruby-on-railsrubyruby-on-rails-5

解决方案


在函数的参数周围添加括号.any?

(parameter.values.any?("") || parameter.values.any?(0) || parameter[:num_units].eql?(0) || parameter[:num_units].nil? || parameter[:num_units].empty?)
=> true

整行周围的括号也可能是不必要的。


推荐阅读