Задает переводы для кэпншов, заголовков и любых других сообщений.
language
Тип: string
Обязательно к заполнению: да
Описание: ISO-код языка перевода
schema_id
Тип: reference( public.schemas )
Обязательно к заполнению: да
Описание: ссылка на схему для записи funapp.translations
message
Тип: string
Обязательно к заполнению: да
Описание: Строка для перевода
translation
Тип: string
Обязательно к заполнению: да
Описание: Перевод строки на язык, указанный в language
Перевод строки задается в таблице funapp.translations
в формате
language |
schema_id |
message |
translation |
---|---|---|---|
en |
admin |
User View |
User View |
ru |
admin |
User View |
Пользовательское представление |
es |
admin |
User View |
Vista de Usuario |
Теперь ссылаться на перевод строки User View
можно в любой части запроса в виде
{
schema: 'admin',
message: 'User View'
}
Пример ниже показывает использование переводов в аргументах, в заголовке, в названиях полей, кнопок и вложенных представлений
{
$id reference(public.user_views) @{
// Перевод названия аргумента
caption = {
schema: 'admin',
message: 'User View'
}
}
}:
SELECT
@type = 'form',
// Перевод заголовка представления
@title = { schema: 'admin', message: 'User View' },
@buttons = [{
// Перевод надписи на кнопке
caption: { schema: 'admin', message: 'Documentation' },
href: 'https://wiki.ozma.io/'
}],
name @{
// Перевод названия поля
caption = { schema: 'admin', message: 'Name' }
},
query @{
caption = { schema: 'admin', message: 'Query' }
}
FROM public.user_views
WHERE id = $id
в дефолтных атрибутах и во всех других местах, где используются строки
/* атрибут по умолчанию - public.field_attributes */
@{
caption = {
schema: 'admin',
message: 'User View'
}
}
В пользовательском интерфейсе будет отображаться перевод в зависимости от выбранного пользователем языка в меню. Смена языка осуществляется в бургер-меню в левом верхнем углу интерфейса ozma.io
, выбранный язык автоматически сохраняется в таблице пользовательских настроек.
Если перевод на выбранный язык не указан для конкретной строки - будет отображено содержимое строки message
.
В некоторых кейсах невозможно использовать функционал с переводами из таблицы funapp.translations
. В этом случае, вы можете использовать старый способ задания переводов, который продолжает поддерживаться в продукте.
{
en: 'User View',
es: 'Vista de Usuario',
ru: 'Пользовательское представление'
}