2015-12-24 1 views
1

Je crée un site web avec Ruby on Rails et je pense à la structure de la base de données.Mieux vaut avoir un champ "Ville" ou une table "Ville"?

Le site est très simple, nous faisons une liste de nombreux endroits, et nous dire de quelle ville ils sont.

Par exemple "Tour Eiffel"/Paris Or "Empire State Building"/New York

Pour la base de données, ce qui semble le choix le meilleur pour vous? Avoir un champ "Ville" dans la table "place" ou faire une table "villes", avec une table de jointure pour le relier aux places de la table?

Nous allons avoir beaucoup d'endroits et faire une page pour chaque ville. Je pense que faire la table de jointure offre beaucoup de flexibilité et nous permet d'utiliser moins d'espace à la fin sur la base de données mais je ne suis pas sûr.

Merci

+0

Il y a une chose comme "trop" normalisée, mais avec tout ce que vous avez décrit ci-dessus, il est logique d'avoir deux tables – Hambone

Répondre

1

Normalisation - Évitez de répéter les mêmes données dans une ou plusieurs tables. Il y a tellement d'endroits dans une seule ville. Quand il s'agit de rechercher des lieux dans une ville, cela aidera beaucoup. Votre projet peut aussi grandir et vous devrez peut-être aller vers une autre table, comme les gens, les restaurants, etc. Alors oui, deux tables est le chemin. Bon look avec votre projet.