Ruby on rails 无法识别RubyonRails中的运算符
我写了这个函数:Ruby on rails 无法识别RubyonRails中的运算符,ruby-on-rails,ruby,Ruby On Rails,Ruby,我写了这个函数: if params[:id] > @max @page = @max end 这里的@max是一个整数,params[:id]的值不是nil 它说第一行有个问题,问题是: nil:NilClass的未定义方法“>” 它不能将>识别为操作员。为什么会这样?是的,params[:id]是nil。这就是那个错误的意思。也许您想要params['id']?如果您可以访问运行应用程序的控制台,请尝试p params,params[:id],然后再次请求查看有哪些
if params[:id] > @max
@page = @max
end
这里的@max
是一个整数,params[:id]
的值不是nil
它说第一行有个问题,问题是:
nil:NilClass的未定义方法“>”
它不能将
>
识别为操作员。为什么会这样?是的,params[:id]
是nil
。这就是那个错误的意思。也许您想要params['id']
?如果您可以访问运行应用程序的控制台,请尝试p params,params[:id]
,然后再次请求查看有哪些值,以及params[:id]
的值是,params[:id]
为nil
。这就是那个错误的意思。也许您想要params['id']
?如果您可以访问运行应用程序的控制台,请尝试p params,params[:id]
,然后再次请求查看有哪些值,以及params[:id]
的值,它不会像上面所说的那样将其识别为NilClass
上的运算符<代码>参数[:id]必须为零。检查Rails日志以获取请求中的参数列表。我猜这个param的名字和你想象的不一样。如果参数为[:id],请尝试。是否存在?&¶ms[:id]>@max
或params[:id]。to_i>@max
来处理异常。它不会像它所说的那样将其识别为类上的运算符<代码>参数[:id]
必须为零。检查Rails日志以获取请求中的参数列表。我猜这个param的名字和你想象的不一样。如果参数为[:id],请尝试。是否存在?&¶ms[:id]>@max
或params[:id]。要解决此异常,请转到\u i>@max
。您确定params[:id]的值不是零吗?该错误表示是。您确定params[:id]的值不是零吗?该错误意味着它是。params[:id]。to_i
只会掩盖问题,因为nil。to_i
返回0;如果0
是某个对象的有效ID,则可能非常危险。params[:ID]。to_i
只会掩盖问题,因为nil。to_i
返回0;如果0
是某个对象的有效ID,则可能非常危险。