Как подойти к многомодельной форме в рельсах - PullRequest
0 голосов
/ 26 февраля 2010

У меня есть сложная форма в Ruby on Rails 2.3.5, вот ее структура: художник - Название - Альбомы -Songs - Фотографии

Каждый исполнитель может иметь альбомы и несколько фотографий. Для каждого альбома есть несколько песен. Я хочу создать трехэтапный процесс. - Создать художника - Создать альбом (будет возможность создавать несколько песен) - Создание фотографий

Я хочу настроить его по-волшебному. Мой вопрос на самом деле довольно общий - как бы вы пошли (с организационной точки зрения), создавая формы для моделей и контроллеров для такого проекта?

В настоящее время у меня есть модель с именем Artist, модель с именем Albums и модель с именем Photos. У артистов много альбомов и фотографий. Под каким видом я бы разместил форму?

Прямо сейчас, как это выглядит, я иду к: Artist / New - создать художника, передать идентификатор исполнителя в альбом, переходить к альбомам как альбомам / новым, передавать идентификатор исполнителя в фотографии, фотографии / новые для создания фотографий, а затем закончить -> вернуться к художникам / шоу.

В идеале, я хотел бы иметь что-то вроде Artist / New / 1 для создания художников исполнители / новый / 2 для создания альбомов и исполнители / новый / 3 для создания фотографий.

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

Спасибо!

1 Ответ

1 голос
/ 26 февраля 2010

Возможно, вам нужно вложенные маршруты . Он автоматически должен обрабатывать отношения.

Так что у вас будут ссылки типа artists/1/albums/new, artists/1/albums/5/songs/new и т. Д.

Итак, ваш сценарий может звучать так:

  1. artsists/new
  2. Сохранить художника на пост.
  3. Перенаправление (или рендеринг формы ajax) в новую статью (вы можете использовать сгенерированный rails helper)
  4. Сохранить исполнителя и то же самое для песен и т. Д.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...