У меня были проблемы с поиском наилучшего решения этой проблемы за последние 3 дня.
У меня есть модель Issue
, модель Article
и модель Section
.В основном, проблема имеет много разделов, и каждый раздел имеет много статей.Issue
s и Article
s являются ассоциацией «многие ко многим» и имеют таблицу соединений под названием articles_issue
, которая также представлена моделью ArticlesIssue
.Какой Section
каждый Article
принадлежит, хранится в таблице объединения с использованием столбца section_id
вместе с порядком в этом разделе.
Теперь, когда я редактирую проблему, у меня есть следующее:список всех статей (на основе определенных критериев поиска) в нижней части страницы, назовем этот Drawer статьи.И форма тела Issue
покажет все возможные Section
как пустые изначально.Когда вы нажимаете Article
в нижней части страницы, он автоматически присоединяется к первому Section
из Issue
(используя jQuery).И нажав на любую статью в разделе, автоматически удалит его.Пока это работает.Используя jQuery-UI, я даже могу переупорядочивать и изменять разделы.

Я борюсь с тем, как мне представить это какполя формы, чтобы при нажатии кнопки «Обновить» я мог корректно обновить свою модель Issue
, в которой будет указываться, в каком разделе и в каком порядке должна быть размещена каждая статья.
Прямо сейчас каждая статья, добавляемая враздел имеет поле <input type="hidden">
.Если имя articles[]
, а значение - идентификатор статьи, это правильно даст мне массив идентификаторов статей, которые я затем смогу просто установить issue.articles = Article.where(id: params[:article_ids])
.Это работает, однако игнорирует как Section
, так и order
.
. Я попытался добавить атрибуты data
в скрытое поле, но позже я понял, что это в основном для JavaScript, а не для данных.значения передаются в качестве параметров моему контроллеру.Если я что-то упустил.Моя вторая идея состоит в том, чтобы превратить value
скрытого поля в объект JSON, в котором хранятся ID, Раздел и Порядок, но это только кажется уродливым и неправильным.
Я думаю, причина, по которой я так сильно борюсьс этим я просто не могу понять, как искать что-то подобное в Интернете.Все мои попытки были тщетны.
Любая помощь будет принята с благодарностью.