ruby on rails相当于PHP测试中的$ _GET,如果设置的话

时间:2011-05-22 17:14:00

标签: ruby-on-rails ruby ruby-on-rails-3

我一直在寻找这个没有太多运气......我有代码

url = params[:url];
if url == "" 
    @myString = "No URL specified, cannot continue"
else
=begin
    DO SOME STUFFS....
=end
end

但DO SOME STUFFS仍然被调用。我有我的索引页面,我对_GET变量执行操作。我想加载没有URL中的参数的索引页面。如何检查它们是否已设置 - 如果不是,则显示消息。如果是,请处理请求......

谢谢!

4 个答案:

答案 0 :(得分:1)

试试这个:

url = params[:url];
if params[:url].nil? 
    @myString = "No URL specified, cannot continue"
else
    DO SOME STUFFS....
end

params[:url]为空时,它等于nil,而不是""

答案 1 :(得分:1)

使用if url.blank?
空白?检查nil和空字符串,如果你没有传递url,那么访问params [:url]将返回nil。这就是你的病情失败的原因。

答案 2 :(得分:1)

rails 5:

@myString = "No URL specified, cannot continue" unless params[:url]

短而简单

答案 3 :(得分:0)

url = params[:url]
if url
  # do stuff
else
  @my_string = "No URL specified, cannot continue"
end
如果没有提供,

params[:url]将为nilnil在条件中评估false。