Pregunta

Estoy creando una pequeña aplicación para conocer un poco mejor los rieles, he usado la gema Omniauth para permitir a los usuarios registrarse/firmar usando Facebook, que funciona muy bien.

Sin embargo, digamos, por ejemplo, uso un andamio para que el usuario agregue una dirección, ¿cómo puedo crear una relación entre los dos? Según tengo entendido un usuario has_many :addresses y dirección belongs_to :user Pero, ¿cómo creo un registro cuando un usuario agrega una dirección específicamente para ese usuario, por lo que cuando se trata de iniciar sesión solo ven las direcciones que agregaron?

Espero que tenga sentido

Gracias

Kt

¿Fue útil?

Solución

Querrá alcanzar la creación utilizando la asociación. Esto significa que si el usuario ha_MANY: direcciones, querrá requerir inicio de sesión en un before_filter en directionesController. Luego, dentro de su controlador, querrá cambiar líneas como (desde la acción del programa):

Address.find(params[:id])

a

current_user.addresses.find(params[:id])

Del mismo modo, también querrá alcanzar sus acciones de creación a través de la asociación.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top