Не используйте I18n.t или метод перевода в ваших моделях. Вы можете сделать это вместо:
В вашей модели
Используйте что-то подобное, чтобы добавить интернационализированные ошибки в атрибут name
вашей модели (см. Документацию: ActiveModel / Errors / method-i-add ):
self.errors.add(:name, :your_error_key)
# The error key could be something like :wrong_name
ПРИМЕЧАНИЕ. Иногда вам даже не нужно добавлять ошибки с помощью метода errors.add
. Например, если вы добавите проверки в вашу модель с помощью чего-то вроде этого:
validates :name, presence: true
Rails добавит ошибку с ключом :blank
(ключ зависит от типа проверки). Другими словами, рельсы внутри будут выдавать self.errors.add(:name, :blank)
В вашем регионе
Тогда в вашем locale.jp.yml можно использовать любой из этих (только один):
activerecord.errors.models.[model_name].attributes.[attribute_name]
activerecord.errors.models.[model_name]
activerecord.errors.messages
errors.attributes.[attribute_name]
errors.messages
В вашем случае замените [model_name]
на timeseries_forecast
и [attribute_name]
на your_error_key
Например:
en:
errors:
messages:
your_error_key: "Your error message in english"