0
0 комментариев

Как можно решить задачу по разделению выводимого текста и кода, а в коде писать только ключ?

Задача: Необходимо вынести весь текст из кода и из шаблона допустим в json файл.

На данный момент есть вот такой вариант решения:

{
    'sc.site_name' : 'Site name',
    'sc.phone_number' : 'Phone number',
    'sc.email' : 'E-mail',
    'sc.skype' : 'Skype',
}

И пример в модели:

class SiteConfiguration(SingletonModel):
    site_name = models.CharField(verbose_name = json_local['sc.site_name'])
    phone_number = PhoneNumberField(verbose_name = json_local['sc.phone_number'])
    email = models.EmailField(verbose_name = json_local['sc.email'])
    skype = models.CharField(verbose_name = json_local['sc.skype'])


Дополнил вопрос:

Возможно подобный подход использовать в связки с gettext?
Я возможно не понимаю зачем нужен gettext, но на сколько эффективно в плане производительности и удобства хранить текст в *.po файлах и использовать в msgid ключи?

Пример структуры в JSON (для наглядного примера):

{
   'sc.site_name': {
       'ru': 'Имя сайта',
       'us': 'Site name',
       ...
   }
   ...
}

И в фале *.po:

# ru.po
msgid "sc.site_name"
msgstr "Название сайта"
 
# us.po
msgid "sc.site_name"
msgstr "Site name"


Добавить комментарий