Testing for nil or empty params in Ruby on Rails
if params[:object] && !params[:object].empty if params[:object] && params[:object] == value if params[:object][:attribute] && !params[:object][:attribute].empty if params[:object][:attribute] && params[:object][:attribute] == value
I put params_check() in my application.rb and it allows me to do this instead:
if params_check(:object) if params_check(:object, value) if params_check([:object, :attribute]) if params_check([:object, :attribute], value)
def params_check(*args) if args.length == 1 if args[0].class == Array if params[args[0][0]][args[0][1]] && !params[args[0][0]][args[0][1]].empty? true end else if params[args[0]] && !params[args[0]].empty? true end end elsif args.length == 2 if args[0].class == Array if params[args[0][0]][args[0][1]] && params[args[0][0]][args[0][1]] == args[1] true end else if params[args[0]] && params[args[0]] == args[1] true end end end end
I stole this off another snippet and modified it to add more conditions. Thanks to whoever it was.