如果我想在覈心數據中創建具有應該可本地化的值的屬性的實體,我想知道最有效的方式是怎麼樣的?核心數據實體中可本地化的屬性值的模型?
作爲一個例子,讓我們假設以下結構:
Book
name (localizable)
description (localizable)
author
的局部簿條目是這樣的:
name: "A great novel" (en/international),
"Ein großartiger Roman" (de),
"Un grand roman" (fr)
description:
"Great!" (en/international),
"Großartig!" (de),
"Grand!" (fr)
author: "John Smith"
在SQL/SQLite的實施,我會用兩個表。 A books表中包含書籍信息(作者,英文/國際名稱和說明)和使用相應書籍的主鍵相關的表格。該第二個表包含本地化的名稱和描述值以及languageCode。這將允許具有可擴展數量的本地化。
對於獲取數據,我會用一個
SELECT COALESCE(localizationBooks.name, books.name)
以獲取給定的語言代碼的實際值。這允許使用國際英語價值作爲不支持的語言的回退。
這是否需要核心數據(例如BookLocalization)中與書相關的獨立實體或者是否存在另一種推薦的方法?
只包含鏈接的答案是[認爲不好的做法](http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-elsewhere-really-good-answers)。請總結這裏的內容(不要複製/粘貼),這樣答案就可以獨立運作。如果你不這樣做,那麼你的答案就會被刪除,特別是如果鏈接死亡的話。 – 2012-05-31 11:00:26
你是對的。我添加了總結。 – 2012-06-01 07:20:48