Переписать перевод Петрушки по умолчанию для проверок в рельсах - PullRequest
0 голосов
/ 29 февраля 2020

У меня уже есть все мои сообщения об ошибках на всех языках, которые мне нужны в локалях конфигурации rails, так как мне изменить сообщение по умолчанию для требуемой петрушки (и других валидаторов) с

Это поле требуется

А как тогда добавить сообщения для другого языка?

1 Ответ

0 голосов
/ 29 февраля 2020

easy:)

Parsley.addMessage('en', 'required', "something else");
Parsley.addMessage('en', 'maxlength', 'something else max is %s')
Parsley.addCatalog('zh-HANS', {required: "其他的东西"}, true);

это добавляет новый язык 'zh-HANS' в каталог, с одним переводом и последним параметром true говорит, что Parsley должен измениться на эту локаль, так что вы бы сказали ложь, если бы вы просто заселили кучу разных местных жителей. Специальный метод переключения на локаль: Parsley.setLocale('zh-HANS')

Rails part

(если вы используете рельсы и у вас похожая ситуация, читайте дальше.)

относительно рельсов и получения переводов в javascript, я хотел бы использовать атрибуты данных, поэтому, если I18n.locale - это zh-HANS, я бы добавил div с некоторым идентификатором, например

%div#parsley-translations{data:{'current-locale'=> I18n.locale, required: I18n.t('forms.errors.required'), 'maxlength'=>I18n.t('forms.errors.maxlength')}}

тогда в javascript

var translationData = $('#parsley-translations').data();
// now use AddLocale with all the keys and values from translationData for the translationData.currentLocale - Will adjust this once I have tested and got it working
...