Ruby 类似于这种语法是什么意思?

jay_chou · 2021年08月10日 · 最后由 jay_chou 回复于 2021年08月10日 · 488 次阅读

unless 后面的代码: &后面加上一个点是什么意思?

def create
   @user = User.find_by_email(user_params[:email])
   unless @user&.authenticate(user_params[:password])
     head 401 
     return
   end

   payload = {user_id: @user.id}
   exp_time = 24.hours.from_now
   if (JsonWebToken rescue nil) 
     token = JsonWebToken.encode(payload, exp_time) 
     render json: {error_code:0, data:{token:token, exp_time:exp_time}, message:"ok"}, status: 201
     return
   else
     head 401
   end
end

 private
   def user_params
     params.require(:user).permit(:email, :password)
   end

有一本非常出名 ruby 书,忘了叫啥了,第一个注意点就是考虑,nil 的情况

谢谢大佬

需要 登录 后方可回复, 如果你还没有账号请 注册新账号