国际化(i18n)数据库字段的命名约定

时间:2011-07-20 00:34:38

标签: database internationalization naming-conventions naming

国际化数据库字段的“最佳实践”命名约定是什么?在当前的代码库中,约定是对外键字段使用'_id'后缀。但是如果一个领域是国际化的,我们是否应该在该领域附加'_i18n'后缀? EG:'label_i18n'而不是'label'?优点和缺点?

1 个答案:

答案 0 :(得分:2)

如果您正在使用i18n,那么您应该有一个存储字段的单独表格。

E.g。

Table Fields (blogpost):
- id, INT (10)
- user_id, INT(10)

i18n table (blogpost_i18n):
- blogpost_id, INT(10)
- title, VARCHAR(255)
- content, TEXT
- lang, VARCHAR(10)

其中lang列存储该语言的i18n代码,这样您就可以添加任意数量的语言。