开发者

ruby on rails equivalent of $_GET from PHP test if set

I've been searching with not much luck for this... I have the code

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

But the DO SOME STUFFS is still getting called. I have my index page which I perform actions on the _GET variables. I'd like to load the index page without the parameters in the URL. How do I check if they are set - if they're not, then display a message. If they are, process the requests...

Thanks!


Try this:

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

When params[:url] is empty it's equal to nil, not "".


use if url.blank?
blank? checks for nil and empty string and if you are not passing the url then accessing params[:url] would return nil. That is why your condition is failing.


rails 5:

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

Short and simple


url = params[:url]
if url
  # do stuff
else
  @my_string = "No URL specified, cannot continue"
end

params[:url] will be nil if not provided. nil evaluates false in a conditional.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜