2

Je travaille sur un dictionnaire simple où j'ai des mots et des synonymes à ces mots.Mot simple - modèle synonyme, attribut sérialisé ou association?

Je ne suis pas sûr quel modèle est une meilleure solution, en travaillant avec un attribut ou une association sérialisé.

Avec association:

class ReservedWord < ActiveRecord::Base 
    has_many :synonyms 
end 

class Synonym < ActiveRecord::Base 
    belongs_to :reserved_word 
end 

Avec sérialisation:

class ReservedWord < ActiveRecord::Base 
    serialize :synonyms 
end 

En termes de redondance des données il n'y a pas un gros problème parce que les synonymes ne sont pas censés répéter pour d'autres mots réservés.

J'apprécie vos suggestions.

Répondre

2

À quoi devrait ressembler votre modèle de requête sql?

En utilisant le mécanisme serialize, vous ne pourrez pas facilement requête basée sur les synonymes. Sur la base de pouvoir inverser la recherche ReservedWord sur la base de leurs synonymes, je recommanderais l'approche belongs_to/has_many rails standard.

+0

C'est exactement le problème que j'ai eu avec l'approche de la sérialisation. Je pense que je vais m'en tenir au modèle standard. –

Questions connexes