处理静态但可扩展列表的最佳方法

时间:2012-11-27 11:41:28

标签: php mysql database-design

我的数据库结构是这样的:

'Article'
 title
 text
 user_id
 language_id

 'User'
 id
 language_id

 'language'
 id
 language name

使用mysql数据库管理这样的语言列表是一种好习惯吗?

我是一名设计师,但就我所知,将数据库排队越少越好。由于语言或多或少是静态的,逐渐扩展,但在网站上加载了几个地方(用户选项,撰写文章,更改网站语言等)我认为我的结构很糟糕。我不知道如何制作它或如何取代我目前的清单。我在想JSON。

在我开始重写所有内容之前,我想得到某种确认。

2 个答案:

答案 0 :(得分:1)

我能看到的唯一问题是:如果用户使用多种语言编写该怎么办?如果是这种情况,则不应将语言ID存储在用户表中,只是因为查询Article表以查找用户撰写文章的所有语言会更加简单:

'Article'
 id
 title
 text
 user_id
 language_id

 'User'
 id

 'Language'
 id
 language name

答案 1 :(得分:0)

这完全取决于翻译列表的大小。最快的解决方案是将语言存储在文件中,并根据用户选择包含正确的文件。

编辑:我可能完全误解了这一点。我的印象是,您正在构建翻译列表,以便用户可以选择以不同语言查看网站。你需要澄清一下。