bey*_*ski 5 mysql database multilingual
根据这种方法,默认语言已经在第一个表中翻译.如果用户不需要翻译,他就不会挣扎.只需连接主表,这就是全部...
产品表(InnoDB):
Obj_id(PK) name desc
--------- ------------------- ------------------
1 Million Dollar Baby Short description is...
2 Music Album Another explanation...
Run Code Online (Sandbox Code Playgroud)
翻译表(InnoDB)
trans_id (PK) Obj_id (FK) lang field trans
-------------- ----------- ------ -------- ---------------------
22 1 TR name Milyonluk Bebek
23 1 BA name Djevojka od milijun...
24 1 TR desc Kisa açiklama burada
25 1 BA desc Kratki opis je ovdje
26 2 BA name Glazba albuma
Run Code Online (Sandbox Code Playgroud)
但是当管理员想要更改默认语言时会出现问题.我有两个选择来解决这个问题:
管理员必须在项目开始时决定default_lang,如果他以后仍想更改default_lang,程序会说:Go to hell.
像第一个解决方案一样,admin必须首先决定default_lang,但是系统将能够将新的default_lang数据从转换表传输到主表(我实际上并没有这样做).
我认为我的解决方案不够好.
你是否更好地了解DEFAULT_LANG问题,无论是否改变结构(如果可能的话,不要改变结构 - 我喜欢它)?
| 归档时间: |
|
| 查看次数: |
2441 次 |
| 最近记录: |