Antes que nada querÃa mandar un saludo a todo el mundo y agradecer de
antemano la ayuda que se aporta mediante estas listas u otros
recursos; puesto que soy nuevo en esto.
Estoy empezando a programar una aplicación en rails después de haber
probado el framework de ruby hace un tiempo desde el lado del
diseñador en un proyecto (es decir, tocando únicamente las vistas) y
habiendo programado previamente solo un poco en C; sin embargo me
gusto bastante la manera de trabajar, el flujo y la filosofÃa. Como
digo estos dÃas me he ido documentando y empezando a desarrollar mi
pequeño proyecto poco a poco mientras voy aprendiendo.
Voy ahora con el problema que me ha surgido: La aplicación debe crear
una “tarjeta” con información del usuario cuando este se registra de
modo que en el controlador que maneja la creación de usuarios se
encarga de ello. De todas formas tengo un controlador propio para la
tarjeta que he creado mediante el script generador scaffolding. ¿Hay
algun modo de llamar desde el controlador de usuario al controlador de
la tarjeta y colocar alli la creación de esta? El trozo de código que
se encarga de esto podréis verlo mejor en http://tinyurl.com/cr53uo
Si no fuera por la necesidad del sistema de autentificación que he
instalado mediante el plugin “restful authentication” la solución
lógica creo que serÃa unificar ambos controladores y mantener la
simplicidad de la aplicación. Exactamente mi duda es si pudiera llamar
al controlador de la tarjeta desde el del usuario o si, aunque la
solución no es la más elegante dejarlo tal cual está puesto que
funciona. QuerrÃa saber vuestras opiniones.
Muchas gracias.
–
Carlos MatallÃn
[email protected]
http://c.matallin.com
+34 607377647
Se me ocurren dos soluciones:
1- colocar la lógica que quieres utilizar en ambos controllers en
Application_controller.rb
2- colocar ese código en un archivo en
------ TuApp/lib/tucodigo.rb -------
Creo que esto lo he visto recomendar antes en la lista, pero ya llegarán
más
comentarios al hilo
El 13 de abril de 2009 14:10, Carlos MatallÃn [email protected]
escribió:
La solución de colocar el código en Application_controller.rb la habÃa
barajado pero sigue pareciéndome igual de sucia (o más) que dejar la
creación de las tarjetas en el controlador de usuarios.
De todos modos agradezco un montón las diferentes soluciones que se
puedan aportar y vuestra opinión ya que como digo acabo de empezar en
esto
2009/4/14 Andrés gutiérrez [email protected]:
pequeño proyecto poco a poco mientras voy aprendiendo.
Si no fuera por la necesidad del sistema de autentificación que he
Carlos MatallÃn
Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es
–
Carlos MatallÃn
[email protected]
http://c.matallin.com
+34 607377647
Al final como lo has resuelto?
A falta de encontrar una mejor solución que me convenza voy a dejarlo
como está ya que funciona; aunque no sea su sitio.
2009/4/14 Francesc E. [email protected]:
De todos modos agradezco un montón las diferentes soluciones que se
Creo que esto lo he visto recomendar antes en la lista, pero ya
Voy ahora con el problema que me ha surgido: La aplicación debe
o que
http://lists.simplelogica.net/mailman/listinfo/ror-es
Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es
–
Carlos MatallÃn
[email protected]
http://c.matallin.com
+34 607377647
Muy buenas,
Pienso que lo más lógico es llevar ese código al modelo, es decir, una
vez que el usuario se registre, hacer que automáticamente se cree la
tarjeta.
Class User < AR
after_create :crea_tarjeta
private
def crea_tarjeta
Lo que sea…
end
end
Carlos MatallÃn escribió:
On Apr 14, 2009, at 5:11 AM, Carlos Matallín wrote:
Al final el código ha quedado de la siguiente manera: del
UsersController borramos cualquier referencia a la creación de
tarjetas y como dices llevamos el código al modelo de usuarios
Ese “create_card” lo puedes meter tambien dentro de un observer.
Hola Juan,
Exactamente era lo que iba buscando; muchÃsimas gracias por tu
inspiración que junto al siguiente enlace me han ayudado a alcanzar el
propósito que iba persiguiendo, hacerlo a la “rails way” jejeje
http://www.therailsway.com/2006/12/8/idiomatic-ruby
Al final el código ha quedado de la siguiente manera: del
UsersController borramos cualquier referencia a la creación de
tarjetas y como dices llevamos el código al modelo de usuarios
Class User < AR
after_create :create_card
protected
def create_card
Card.create :user_id => id, :title => “Visit card of
#{self.login}”
end
end
Gracias de nuevo y un gran saludo
2009/4/14 Juan José Vidal [email protected]:
 private
como está ya que funciona; aunque no sea su sitio.
barajado pero sigue pareciéndome igual de sucia (o más) que dejar la
Application_controller.rb
Antes que nada querÃa mandar un saludo a todo el mundo y agradec
gusto bastante la manera de trabajar, el flujo y la filosofÃa. Como
¿Hay
llamar
+34 607377647
http://lists.simplelogica.net/mailman/listinfo/ror-es
Ror-es mailing list
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es
–
Carlos MatallÃn
[email protected]
http://c.matallin.com
+34 607377647
Muy cierto, de ese modo saco del modelo de usuario acciones que no
tienen que ver directamente con él, sino con las tarjetas.
He escrito un artÃculo acerca del proceso de resolución de la duda,
para que aquellos que se estén iniciando, como yo puedan echarle un
vistazo. http://c.matallin.com/2009/04/the-rails-way/
Muchas gracias y un saludo.
2009/4/14 Francesc E. [email protected]:
[email protected]
http://lists.simplelogica.net/mailman/listinfo/ror-es
–
Carlos MatallÃn
[email protected]
http://c.matallin.com
+34 607377647