2011-03-02 33 views
0

所以我看到here語言環境的目錄結構,對於在Rails 3的語言環境(國際)建議的結構是基於用於模型和視圖目錄中的文件的一個類似的分離(見3.4 Locale的組織文件頁)。爲Rails 3

我有2個問題:

1)對於控制器使用的注意事項 - 例如,一個重定向期間「你的記錄已成功加入」,就是此意,有在區域設置控制器目錄呢?或者我應該只使用默認en.yml文件在根目錄下的語言環境,並有類似:

en: 
    notices: 
    create_success: "Your record was added successfully." 
    update_success: "Your record was updated successfully." 

這樣,所有通知都是在同一個文件。基於方便

2)認爲在某些方面其實我寧願所有的翻譯在一個單一的文件,因爲它更容易/更快地處理和查找,然後更多的項目可能被共享。是否有理由讓它們與模型和視圖保持類似的目錄結構? - 這是由於文件的性能和加載可能嗎?

回答

1

如果有閃光消息的單獨的目錄,這樣似乎是合理的給你,然後去了。指南中給出的例子就像它所說的例子。以任何有意義的方式組織他們。

也是一樣保持它都在同一個文件中。它的工作原理是一樣的,建議考慮分解它的唯一原因是因爲它很難管理。但如果你想這樣做,那麼做! :)如果你改變了主意,你總是可以將它分開。

+0

同意,但有在網頁加載方面對性能產生任何影響?即,所有的語言環境文件都會根據使用情況加載和緩存或單獨的文件? – 2011-03-03 15:31:57

+0

默認的I18n內存存儲會在應用程序初始化時加載所有文件,因此不會影響頁面加載。我懷疑這兩種方案在性能上會有明顯差異,但我沒有運行任何基準。如果你擔心它,請運行一些測試或切換到[不同的後端](http://guides.rubyonrails.org/i18n.html#using-different-backends)。 – idlefingers 2011-03-03 16:37:25

+0

我們決定堅持推薦的目錄結構;因爲他們確實與模型有關,所以使用模型範圍界定了我上面的一些例子;併爲其他所有不適合模型和觀點的「一般」範圍創建。謝謝你的幫助。 – 2011-03-04 14:33:40