Bonjour tout le monde,

Je commence la réalisation de mon premier site catalogue qui est et devrait rester bilingue. Maintenant que le design est validé par le client, je réfléchis à l'architecture de la base de données et la gestion des langues me pose problème.

La langue française est la langue par défaut du site.
Il est décidé que chaque fiche produit serai consultable en français et en anglais.

La première idée à laquelle j'ai pensé est de créer une colonne pour chaque langue.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
Table products
--------------
id (primary,auto-increment)
department_fr
department_en
title_fr
title_en
description_fr
description_en
...
D'après les recherches que j'ai pu effectuer, il semblerait que cette technique soit assez contesté par rapport à l'ajout éventuel de nouvelles langues (le projet sur lequel je travaille n'est pas censé être concerné donc). L'avantage pour moi par contre, c'est que les rèquetes restent simple à formuler. En revanche, j'ai peur que ça fasse un peu table à rallonge.

Une autre technique serait d'utiliser une table spécifique à chaque langue et d'utiliser des jointures (clés étrangères ?). Je n'ai pas trouvé d'exemple concret sur cette architecture et pour le coup j'apprécierais énormément qu'une âme charitable m'explique son fonctionnement plus en détails.

D'avance, merci.