Продолжение записи нескольких строк в связанные таблицы

Я все еще новичок в Ruby. У меня есть модель базы данных на основе многоязычного веб-сайта. Итак, схема базы данных

article:
 id

article_lng:
 id
 lng

article_data:
 title
 body 
 ...

Если идентификатор находится в article, 2 или более записей для одного идентификатора с языком настройки находятся в article_lng. И article_data содержит данные с языком, на который ссылается внешний ключ. article_lng — это что-то вроде версий статьи. Это общая идея, поэтому я надеюсь, что это ясно.

Теперь у меня есть форма в Padrino, и я хотел бы написать форму, как я привык, с простой моделью одной таблицы, например, в маршруте сообщения в контроллере.

@article = Article.new(params[:article])

А затем вызовите метод сохранения для экземпляра объекта.

В этой новой ситуации мне нужно создать статью на двух языках в одном посте. Таким образом, создается идентификатор в верхней таблице (статьи), также 2 строки в article_lng с этим идентификатором (внешний ключ), а затем данные. Надеюсь структура понятна.

Таблицы связаны в моделях, конечно.

Я не знаю, как писать или структурировать данные во время публикации. Пожалуйста, какие-либо предложения по правильному способу сделать это?

Спасибо


person Levi    schedule 03.03.2018    source источник


Ответы (1)


Это делается с помощью вложенных атрибутов. Я сейчас заблокирован в другой проблеме. Но форма может быть размещена через форму поверх ассоциаций и стилей.

f.fields_for, :association_name
   f.text_area
   f.fields_for
    ...subform...
person Levi    schedule 05.03.2018