2010-05-27 75 views
1

這裏有一個詞我必須做出意譯:如何在Django模板中創建「嵌套」轉換字符串?

Poll ends in 2 hours 23 minutes 

此字符串必須具備的主要短語和單數和複數形式「小時」和「分鐘」。

{% blocktrans %}Poll ends in {{ poll.expire_hours }} ??? {{ poll.expire_minutes }} ???{% endblocktrans %} 

那麼我該怎麼做,而不是???


解決方案:由一個簡單的標記,需要這樣的參數:

{% readable_interval _('Poll ends in %s') poll.expire %} 

和裏面轉換poll.expiretimedelta)轉換成可讀的文本( 'X天'/「N個小時和M分鐘'/'N小時'/'M分鐘'/'不到一分鐘')。所有在標籤代碼中編碼的字符串都是i18-ized。

回答

2

這種類型的字符串會給你帶來痛苦,如果你試圖通過這種方式來實現它。爲它寫一個template tag

+0

標籤的外觀應該如何以及文字如何翻譯? – 2010-05-27 18:19:55

+0

標籤應該花費小時和分鐘,它應該使用正常的Django i18n機制。 – 2010-05-27 18:25:23