Rails 3 многошаговая форма с загрузкой файлов - PullRequest
6 голосов
/ 20 июня 2011

У меня возникли проблемы при попытке выяснить, как реализовать многостраничную форму Rails 3 с загрузкой файлов, где каждый шаг обрабатывается действиями обновления / редактирования в контроллере.

Райан Бейтс предоставил своюЗамечательный screencast о том, как создавать многошаговые формы с использованием сессий, а также краткое описание того, как сделать что-то похожее, путем сохранения в базе данных на начальном этапе и последующего обновления на каждом последующем этапе.Я также прочитал его gist , в котором более подробно объясняются некоторые различные варианты создания многошаговой формы (я склоняюсь к варианту 1).

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

Просто чтобы прояснить ситуацию, в настоящее время я пытаюсь создать запись в базе данных на начальном этапе работы мастера, и каждая последующая страница обновляет модель.

Есть идеи?

Пример или точка в правильном направлении будет принята с благодарностью.

Спасибо!

Примечание: я прочитал еще один пост, в котором упоминается что-то о хранилище данных ключ / значение, но это, к сожалению, немного над моей головой ...

1 Ответ

0 голосов
/ 12 июля 2011

Хранилище ключей-значений или SQL в этом отношении очень слабо связаны с вашей реальной проблемой.Это просто разные подходы к тому, как ваши данные хранятся в бэкэнде.Использование так или иначе не имеет большого значения в вашем случае.

Что касается настоящего вопроса, я думаю, что он слишком общий для SO.Многоступенчатые формы имеют тенденцию сильно отличаться друг от друга.Не существует «одного хорошего способа» сделать это.

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

В конце - я считаю, что многоэтапные формы на самом деле не лучшая идея, когда дело доходит до удобства использования.Конечно, есть веские причины использовать их в некоторых случаях, но вам стоит подумать дважды, есть ли способ избежать таковых в вашем случае.

Одна из проблем, с которыми я столкнулся недавно с формами и загрузками, былапроверка (это не относится конкретно к Multi / Single step).Обычно, когда проверка не проходит, пользователь должен повторно загрузить файл.К счастью, в вашем случае это не большая проблема, так как Carrierwave обрабатывает это автоматически.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...