1
我有一個我想翻譯的「資源」表單。我在xx.yml
定義的翻譯:Rails - I18n:我如何找出翻譯路徑?
xx:
activerecord:
models:
user:
email: "xx"
而且還試圖「一」和「其他」的標籤,「電子郵件」。但我仍然有問題,要麼遭遇:
I18n::InvalidPluralizationData (translation data {:email=>"xxx"} can not be used with :count => 1):
i18n (0.7.0) lib/i18n/backend/pluralization.rb:35:in `pluralize'
i18n (0.7.0) lib/i18n/backend/base.rb:40:in `translate'
i18n (0.7.0) lib/i18n.rb:158:in `block in translate'
i18n (0.7.0) lib/i18n.rb:154:in `catch'
i18n (0.7.0) lib/i18n.rb:154:in `translate'
activemodel (4.2.5) lib/active_model/naming.rb:188:in `human'
activemodel (4.2.5) lib/active_model/errors.rb:437:in `generate_message'
activemodel (4.2.5) lib/active_model/errors.rb:449:in `normalize_message'
activemodel (4.2.5) lib/active_model/errors.rb:300:in `add'
...
```
或翻譯不打。
好的,這對我有用。但如何調試? – knh170
不幸的是,沒有簡單的方法來調試活動記錄i18n集成。最簡單的方法是導航到源代碼並檢查它正在查找哪個翻譯。不是那麼簡單的主要原因是它在內部創建了一個用於翻譯的大量默認值。在你的情況下,它會更加激烈,因爲它在代碼的完全不同的部分(因爲在生成類的名稱而不是屬性的名稱時會引發錯誤)。 – BroiSatse
您可以嘗試調試它的一種方法是使用修補程序I18n後端查找方法打印翻譯鍵,然後調用以前的實現。 – BroiSatse