Предложение Guard вместо обертывания кода внутри условного выражения Rails

Существует следующий код:

# API controller for authentication
class Api::V1::SessionsController < Api::V1::ApplicationController
  skip_before_action :authorize

  def create
    @user = User.find_by(email: params[:user][:email])
    unless @user && @user.authenticate(params[:user][:password])
      @error_message = 'Invalid username or password'
      render 'shared/error', status: :unauthorized
    end
  end
end

Я использую Rubocop для проверки кода, если он соответствует рекомендациям Ruby. Я получил следующую ошибку:

Use a guard clause instead of wrapping the code inside a conditional expression.
    unless @user && @user.authenticate(params[:user][:password])

Итак, я не понимаю, как я могу сделать этот код лучше, используя предложение guard. Спасибо заранее!

Ответы