Des Acteurs avec plusieurs roles, pour moi cela revient à un Has_many
dans le model acteurs etc....



On 26 mai, 12:22, "Cyril Mougel" <[EMAIL PROTECTED]> wrote:
> On 5/26/07, Bastien Quelen <[EMAIL PROTECTED]> wrote:
>
>
>
>
>
> > Le 26/05/07, Cyril Mougel <[EMAIL PROTECTED]> a écrit :
> > > Bonjour,
>
> > Bonjour,
>
> > > Dans une application Rails que je suis en train de créer, j'ai un blocage.
> > Je
> > > ne sais pas trop si ce blocage est une limitation de mon esprit ou de
> > rails.
> > > Voici donc mon problème.
>
> > > J'ai 3 tables :
> > > - Acteurs
> > > - Films
> > > - Roles
>
> > > Dans chacune d'elle, il y a un champs nom. Mais voilà, je voudrais lier
> > ces 3
> > > tables entre elle mais de façon unique. Ainsi en réfléchissant de manière
> > > purement SQL, je voulais créer une table comme suit :
>
> > > CREATE TABLE acteur_film_role {
> > >     id INTEGER,
> > >     acteur_id INTEGER,
> > >     film_id INTEGER,
> > >     role_id INTEGER
> > > }
> > > Mais avec Rails, impossible de voir comment le schématiser à part en
> > créant
> > > un nouvel objet model qui schématisera cette nouvelle table composé de
> > > belongs_to et has_many Mais cela m'imposera de créer cette objet à
> > > chaque fois pour faire une liaison. Car en effet, le
> > > has_and_belongs_to_many, ne me permet
> > > de faire la liaison avec une base intermédiaire que de deux champs, pas
> > > trois.
>
> > > En réfléchissant au problème, je n'ai pas non plus vu d'autre moyen
> > conceptuel
> > > pour faire cette liaison à part comme je l'ai fait précédemment. Ce
> > nouveau
> > > moyen pourrait peut-être me résoudre mon problème.
>
> > En fait dans la logique rails la méthode est plutôt d'avoir dans la table
> > roles un acteur_id et film_id.
> > Ensuite passer par une relation :througth sur les models acteur et film qui
> > permettra de faire des film.roles et des acteur.films sans passé par cette
> > table triple relation.
> > Pour la syntaxe de :througth tu trouvera facilement de la doc dans les
> > archives de la ML et sur le net.
>
> Le problème est que faire ce système implique qu'un rôle n'a qu'un
> seul acteur et film. Hors, il se trouve qu'un acteur peux avoir
> plusieurs rôle dans un film, qu'un film a plusieurs acteurs par rôle
> et qu'un film plusieurs acteurs. Donc, j'ai pas le choix, cette
> possibilité ne pourra pas être utilisé à mon avis.
>
>
>
> > PS: J'ai répondu sur ton blog pour le probéme d'ipv6 ;)
>
> Merci à toi, j'ai répondu
>
> --
> Cyril Mougel


--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse [EMAIL PROTECTED]
-~----------~----~----~----~------~----~------~--~---

Répondre à