[Ror-es] Un campo de un modelo debe tener el valor del campo de otro modelo
Pedro Visintin
pedro.visintin at gmail.com
Wed Sep 13 00:52:26 GMT 2006
Hola Iñaki:
Tu modelo deberia ser algo asi:
Class Cancion < ActiveRecord::Base
belongs_to :artista, :foreign_key=>"artista"
belongs_to :album, :foreign_key=>"album"
end
Class Artista < ActiveRecord::Base
has_many :canciones, :foreign_key=>"artista"
has_many :albums, :foreign_key=>"album"
end
Class Album < ActiveRecord::Base
end
corrijan si me olvide de algo
Saludos
P
On 9/12/06, Iñaki <ibc2 at euskalnet.net> wrote:
>
> Hola, ante todo perdón por el asunto, no se me ocurre nada más
> descriptivo.
>
> Resulta que tengo un modelo "Cancion" asociado a la tabla "canciones" con
> los
> siguientes campos (y pongo un ejemplo de entrada):
>
> tabla "canciones"
>
> ----------------------------------------------------------------------------------------
> id name artista album
> 82 Mi carro 5 8
>
> ----------------------------------------------------------------------------------------
>
> Y otros dos modelos "Artista" y "Album" asociados a las tablas "artistas"
> y "albums":
>
> tabla "artistas"
>
> ----------------------------------------------------------------------------------------
> id name
> 5 El Fary
>
> ----------------------------------------------------------------------------------------
>
> tabla "albums"
>
> ----------------------------------------------------------------------------------------
> id name
> 8 Grandes Exitos
>
> ----------------------------------------------------------------------------------------
>
>
> Pues bien, yo quiero que al hacer un "list" de las canciones el valor
> del "artista" y "album" sea sustituido por los "name" de sus tablas
> correspondientes. Es decir, aplicar algo así:
>
> artist = Artista.find(cancion.artista).name
>
> El caso es que no tengo ni idea de dónde poner eso. Algo me dice que esto
> debe
> ir dentro del modelo, y no dentro del controlador, pero ni lo tengo muy
> claro
> ni mucho menos sé cómo ponerlo dentro del modelo.
>
> En principio, el listado esta hecho con un scaffold, así que la función en
> el
> controlador para la acción "list" sería la típica:
>
> @cancion_pages, @cancion = paginate :cancion, :per_page => 10
>
>
> ¿Alguien me puede orientar cómo debo añadir lo que me interesa?
> Por si fuera necesario, aviso que sólo debe ser para lectura y no para
> escritura. La aplicación web se limitará a listar los datos de una base de
> datos sin modificarlos en absoluto.
>
>
> Gracias y un saludo.
>
>
>
> --
> Iñaki
> _______________________________________________
> Ror-es mailing list
> Ror-es at lists.simplelogica.net
> http://lists.simplelogica.net/mailman/listinfo/ror-es
>
--
Pedro Visintin . I T S o l u t i o n s A r c h i t e c t
Ruby On Rails Argentina. http://blogs.onrails.com.ar
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.simplelogica.net/pipermail/ror-es/attachments/20060913/d3ed0bbb/attachment.htm
More information about the Ror-es
mailing list