Cómo usar correctamente la cláusula de guardia en Ruby

¿Cuál es la forma correcta de usar la cláusula de protección en esta muestra?

def require_admin unless current_user && current_user.role == 'admin' flash[:error] = "You are not an admin" redirect_to root_path end end 

No sé dónde colocar el mensaje flash cuando bash volver a escribir usando estas https://github.com/bbatsov/ruby-style-guide#no-nested-conditionals convenions

Puede utilizar la statement de return aquí. Esencialmente, no es necesario que el método continúe if se cumplen esas condiciones, por lo que puede rescatarse temprano.

 def require_admin return if current_user && current_user.role == 'admin' flash[:error] = "You are not an admin" redirect_to root_path end 
    Intereting Posts