База знаний BILLmanager

Язык не отображается на странице авторизации

Проблема

Добавлен новый язык (локализация) через веб-интерфейс в меню НастройкиЛокализации, но он не появляется в выпадающем списке языков на странице авторизации.

Это ожидаемое поведение. Локализация, добавленная через веб-интерфейс, по умолчанию недоступна на странице входа. Для её отображения требуется дополнительная настройка в базе данных (БД).

Если язык добавляется вручную по инструкции Добавление нового языка в платформу, то он сразу появляется на странице авторизации. Это происходит, потому что при ручном создании языкового файла billmgr_msg_<locale_name>.xml в таблицу БД locale автоматически добавляется запись embedded='on'. При добавлении через веб-интерфейс эта запись не создаётся.

Решение

Вмешательство в базу данных предполагает потенциальный риск. Мы не рекомендуем вносить ручные правки в базу, поскольку это может нарушить корректную работу платформы.

Перед внесением изменений в БД создайте резервную копию платформы. 

Чтобы добавленная через веб-интерфейс локализация была доступна на странице авторизации, добавьте запись о ней в БД BILLmanager:

  1. Определите locale_id нужной локализации в разделе НастройкиЛокализации. Если столбец id отсутствует, включите его в меню Отображать поля → включите опцию Id → кнопка Выбрать.
  2. Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  3. Введите команду:

    mysql billmgr -e 'update locale set embedded="on" where id="locale_id"'
    Пояснения
  4. Очистите кеш БД BILLmanager: 
    rm /usr/local/mgr5/var/.db.cache.* -f
  5. Перезапустите BILLmanager:

    /usr/local/mgr5/sbin/mgrctl -m billmgr exit
Может быть полезно
Дата последнего обновления статьи: 17.12.2025. Статья подготовлена техническими писателями ISPsystem