>
> Jai aussi pensé a une class AdDetails, et AdRealEstateDetail qui 
> hériterait delle, mais ce n'est pas possible avec les rails que toutes les 
> sous-classes se partageront la même table
>

Et bien en fait si c'est possible avec la STI, Single-Table Inheritance.
Ce serait plutôt AdRealEstate < Ad par contre.

Je t'avoue que ça fait un sacré bout de temps que je ne me suis pas penché 
là-dessus...
Alors du coup je n'ai pas mieux à t'offrir que ça :/
http://www.google.com/search?q=rails+3+sti

Quelqu'un at-il une solution pour ce genre de problème?
>


donc j'ai pensé au polymorphisme, mais polymorphisme signifie aussi que je 
> dois ajouter une référence à ma table "ads" vers les tables détail, et 
> supprimer ad_id des tables detail, ce que je pense est un non-sens car 
> certaines annonces peuvent ne pas avoir de détails, mais les détails sont 
> des non-sens sans leur annonce.
>
 
Ben, sans vouloir être méchant ou faire de l'argument d'autorité...
Malgré ce qu'on veut faire croire, le monde du code et de l'Orienté Objet 
est différent du monde de la BDD et des Entités Relations (ne vous méprenez 
pas, je trouve ça super qu'on fasse un ActiveRecord qui simplifie les 
correspondances).

Et là encore, tu découvriras des mondes totalement différents si tu as la 
chance de bosser avec un DBA senior, un expert en perf BDD, un 
tuneur-fou... ou de nombreuses personnes sur cette liste qui sont fans du 
NoSQL (plus personne parle de schemaless, c'est passé de mode ?). Le 
"non-sens" s'efface alors devant des astuces parfois surprenantes mais 
redoutablement efficaces :)

Dans le monde de l'OO, par contre, il suffit de réunir une poignée de 
développeurs pour avoir autant de définitions différentes de polymorphisme. 
Parlons plutôt d'héritage, sur ce coup-là. Et encore :)

Bon courage et à plus,

-- 
-- 
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]
--- 
Vous recevez ce message, car vous êtes abonné au groupe Google Groupes 
Railsfrance.
Pour vous désabonner de ce groupe et ne plus recevoir d'e-mails le concernant, 
envoyez un e-mail à l'adresse [email protected].
Pour plus d'options, visitez le site https://groups.google.com/groups/opt_out .


Répondre à