Forum: Rails-ES Re: Acceder a multiples bases de datos

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
congrio (Guest)
on 2007-01-29 10:53
(Received via mailing list)
Sigo atrancado con esto.

Ahora, en mi aplicación si pongo
http://localhost/controlador_b/buscar_noticia funciona perfectamente
Entonces, es cuando quiero que el buscar_noticia sea ejecutado desde el
controlador_a
ejecuto http://localhost/controlador_a/listar_noticia  y me dice:

undefined method `buscar_noticia' for Controlador_b:Class

el código que falla es:

@noticias = Controlador_b.buscar_noticia


Seguro que estoy haciendo algo mal, pero no doy con la solución



----- Mensaje original ----
De: Xavier N. <removed_email_address@domain.invalid>
Para: La lista sobre Ruby On Rails (rubyonrails.com) en castellano
<removed_email_address@domain.invalid>
Enviado: viernes, 26 de enero, 2007 12:45:04
Asunto: Re: [Ror-es] Acceder a multiples bases de datos

On Jan 26, 2007, at 12:22 PM, congrio wrote:

> Ok, con lo que me has dado funciona. Pero no a la vez, o no se como
> llamarlo.
> Ahora, lo que me salen son los datos de la base de datos B y antes
> solo salian los de la base de datos A
> Lo que no se es como desde el mismo controlador hacer referencia a
> A y a B simultaneamente.
>
> No se si me explico bien. Encima no estoy nada suelto en desarrollo
> con rails

Ahi lo que veo que has de distinguir claramente es que la base de
datos esta asociada a los *modelos*.

Por defecto en Rails todos los modelos usan la misma base de datos
(por ejemplo, production), que es aquella en cuyas tablas se hacen
persitentes.  Pero puedes tener los modelos distribuidos por varias
bases de datos. Lo que si que ha de pasar es que cada modelo este
asociado a una sola de ellas (y por lo general sus relacionados).

Si lo tiene configurado asi con lo que explique en el anterior mail
va todo solo, no has de preocuparte de la base de datos de la que
viene User.find(1), ni donde se graba document.save, AR ya lanza el
SQL contra la que toque transparentemente.

-- fxn

P.D.: No se soportan transacctiones que involucren modelos de mas de
una base de datos.

_______________________________________________
Ror-es mailing list
removed_email_address@domain.invalid
http://lists.simplelogica.net/mailman/listinfo/ror-es









______________________________________________
LLama Gratis a cualquier PC del Mundo.
Llamadas a fijos y móviles desde 1 céntimo por minuto.
http://es.voice.yahoo.com
Imobach González Sosa (Guest)
on 2007-01-29 10:59
(Received via mailing list)
El Monday 29 January 2007 08:51:23 congrio
escribió:> el código que falla es:
>
> @noticias = Controlador_b.buscar_noticia

Hombre, para empezar, buscar_noticia es un método de instancia de
Controlador_b, y no un método de clase (que es como lo estás invocando).

De todos modos, no creo que instanciar Controlador_b y llamar a
buscar_noticia
sea una solución limpia. Si el código de buscar_noticia lo vas a invocar en
más de un punto, quizás debieras pensar incluirlo en alguna biblioteca (en
lib/) o incluso en el ApplicationController (prefiero la primera solución,
pero bueno).

De todos modos, no sé qué quieres hacer exactamente.

Saludos.

--
Imobach González Sosa
banot.net
Correo-e: imobachgs en banot punto net
This topic is locked and can not be replied to.