1. 多語言儲存
假設下面乙個場景:
系統有乙個產品目錄需要維護,目錄名稱和描述需要支援多語言儲存。表結構設計如下:
product_category
pk欄位
型別允許null
描述pk id
varchar(36) n
類別id
lang_id
varchar(36)
n多語言id
created_on
datetime
n建立時間
created_by
nvarchar(50)
n建立人
changed_on
datetime
y變更時間
changed_by
nvarchar(50)
y變更人
針對每個需要支援動態多語言的表,除了建立一張主表,還需建立乙個與之匹配的附表,命名規範為_m, m表示multilingual的意思。
product_category_mpk
字段型別
允許null
描述pk id
varcahr(36) n
關聯主表的lang_id欄位 pk
culture_code
varchar(10) n
區域**
name
nvarchar(50)
n類別名稱
description
varchar2(500)
y類別描述
2. 多語言維護
使用者在維護需要支援多語言資料的字段的時候,需要根據系統支援的多語言種類,一次錄入多筆資料。
為了保證ui的一致性,可以開發js版本的多語言控制項。如下圖:
3. 多語言訪問
由於設計的時候,嚴格遵循了一致的schema設計和命名規範,我們可以通過**生成工具自動生成關聯查詢語句,使得m表對於開發者透明。
4. 其它
在網上有金蝶k3 cloud中的設計:
Flutter多語言實踐
flutter的多語言文件 英文版 中文版簡單來講,流程圖如下 簡單講一下整個流程 string order list waiting for review intl.message waiting for the review name order list waiting for review ...
FLEX實踐 多語言實現
今天在網上搜了一下flex的多語言實現方法,發現實現方式還挺多的 這裡介紹的多語言的實現方式其實不是我想要的,不過也可以實現一般的需求,下面來介紹我用到的多語言的實現方案 1 在命令列中執行命令 locale en us zh cn flex sdk目錄下預設存在en us目錄,如果想新增其他的語言...
系統多語言實現
早期開發未考慮全球化,英文版系統,頁面很多,每個頁面內容也很多。本地化,如果選擇特定的語言環境,應該顯示特定語言。系統簡介 1 沒有採用windows控制項,而是根據系統的特性自定義控制項,比如button,自定義的控制項為rcbuton rctextbox rclabel等。2 win form開...