Agregamos la funcionalidad de autenticación. Para que los registros puedan ser manipulados, vamos a crear que un usuario pueda registrarse y/o logearse en la aplicación.
From Scratch.
En la applicación de Blog vamos a crear un nuevo resource para los usuarios
rails g controller users new
rails g model user email:string password_hash:string
rake db:migrate
Tenemos que crear una ruta /sign_up que muestre un formulario para poder guardar un nuevo registro de usuario.
La clave tiene que guardarse encryptada.
ej:
passwors_hash = Digest::MD5.digest("some password") # Encrypta la password.
Una vez que tenemos el sign_up completo, creamos el login. Hacemos un controllador, SessionsController que tiene una acción que maneja al session.
rails g controller sessions new
dentro de la acción new, en su vista, creamos un formulario donde pedimos email y password para que sea redirijido al create del mismo controlador.
Dentro del create, preguntamos a la clase user si hay un usuario con ese mail y esa password. Si lo hay guardamos en session, el id del dicho usuario.
Agregar los befora actions que impida que se pueda salvar blogs cuando el usuario no está logeado.
Agregar la funcionalida de logout.