基本 Ruby 逻辑 - 返回 True 或 False
Basic Ruby Logic - Returning True or False
我是 Rails 上 Ruby 的新手,坚持使用一些基本逻辑来使用我的 Rails check_in 方法 return "true" 或 "false"。下面的代码和逻辑正在运行,但它是 "ugly" 并且需要重构。
def check_in
@user = User.find_by_username(params[:username])
if @user && @user.authenticate(params[:token])
return true
else
return false
end
end
更优雅的方法是什么?
因为您的 if
条件已经评估为您想要的布尔值,您可以简单地 return 它。此外,在 Ruby 中,您不需要显式使用 return @user && @user.authenticate(params[:token])
,因为方法中最后一条语句的值将自动用作 return 值。
def check_in
@user = User.find_by_username(params[:username])
@user && @user.authenticate(params[:token])
end
我是 Rails 上 Ruby 的新手,坚持使用一些基本逻辑来使用我的 Rails check_in 方法 return "true" 或 "false"。下面的代码和逻辑正在运行,但它是 "ugly" 并且需要重构。
def check_in
@user = User.find_by_username(params[:username])
if @user && @user.authenticate(params[:token])
return true
else
return false
end
end
更优雅的方法是什么?
因为您的 if
条件已经评估为您想要的布尔值,您可以简单地 return 它。此外,在 Ruby 中,您不需要显式使用 return @user && @user.authenticate(params[:token])
,因为方法中最后一条语句的值将自动用作 return 值。
def check_in
@user = User.find_by_username(params[:username])
@user && @user.authenticate(params[:token])
end