Rails 5 и Globalize gem: отсутствует перевод

У меня есть приложение Rails 5, в котором я использую Globalize для локализации. У меня сейчас проблема, когда я не могу сохранить новые объекты, если у них нет переводов.

Моя модель выглядит так:

# Product.rb
translates :description, :fallbacks_for_empty_translations => true
has_many :translations
accepts_nested_attributes_for :translations

# ProductTranslation.rb
belongs_to :product, optional: true

Моя схема базы данных ищет мои product_translations, как это:

t.integer "product_id", null: false
t.string "locale", null: false
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.text "description"
t.index ["locale"], name: "index_product_translations_on_locale"
t.index ["product_id"], name: "index_product_translations_on_product_id"

Когда я пытаюсь сохранить новые продукты, я получаю эту ошибку:

Unable to save product with id =  got these validation errors {:"translations.globalized_model"=>["translation missing: sv.activerecord.errors.models.product/translation.attributes.globalized_model.required"]}

Есть идеи, что я могу сделать, чтобы это работало?

Как вы сохраняете новые продукты? Может быть, потому, что вы не предоставляете перевод для нового экземпляра продукта?

Nondv 12.08.2018 17:28

Рискну предположить, что это не фактически, проблема «перевода»: я думаю, он пытается вернуть вам переведенное сообщение об ошибке, но не может найти перевод для этой ошибки. Где находится ваш файл sv.yml и как он выглядит?

Stuart 13.08.2018 10:04

Еще одно предположение: это должен быть has_many :product_translations - судя по вашим примерам кода, translations не является моделью.

Stuart 13.08.2018 10:12
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
6
3
334
0

Другие вопросы по теме