2010-01-11 7 views
2

Вот пример initial_data.json. Я хочу, чтобы django хранит значение из имени столбца в файл перевода. Поэтому, когда значение печатается где-то, оно может использовать переведенное значение. Есть ли способ сделать это? Благодарю.перевод в django fixtures

[ 
{"pk": 1, "model": "category.category", "fields": {"name": "Report"}}, 
{"pk": 2, "model": "category.category", "fields": {"name": "Sport"}} 
] 

ответ

1

Если вы хотите сделать что-то вроде ::

"fields": {"name": _("Report")} 

Тогда вы не повезло, так как JSON не имеет поддержки gettext, и тому подобное. (Тем не менее, вы ничего не мешаете вам интернационализировать их во время выполнения.) Если вы хотите сделать что-то вроде этого, вам нужно либо вручную добавить их в файлы , которые вы пишете, либо поместить их где-нибудь в код, так что makemessages может выбрать их вверх.

Действительно, интернационализация значений базы данных стандартными механизмами Django - это действительно плохая идея. Есть все возможности для того, чтобы все пошло не так. Если интернационализация имен важна для вас, вы должны написать интернационализацию в свою схему базы данных. (Более подробная информация о нем указана в http://code.djangoproject.com/ticket/6952.)