Создать новое действие для существующего контроллера
Я знаю, что это, вероятно, вопрос новичков, но можно ли создать новое действие (метод в контроллере и связанный с ним просмотр) из командной строки на существующем контроллере?
Например, у меня уже есть контроллер с именем "Продукты". Могу ли я запустить:
rails g controller products [new_action]
а затем рельсы будут вставляться:
def [new_action]
end
В мой контроллер продуктов и создайте новый файл с именем "[new_action].html.erb" в каталоге views/products/? Я уже сделал это в Google, но удовлетворительный ответ не был возвращен. Кроме того, я бы просто пошел вперед и попробовал, но я довольно далеко в разработке моего текущего приложения и действительно не хочу ничего испортить.
Ответы
Ответ 1
Я уверен, что вы не сможете сделать это в 100% автоматическом режиме. Причина в том, что Rails не знает, что вы сделали с вашими маршрутами или контроллером, и для некоторых существующих логических систем потребуется некоторая логика. Лучше всего просто добавить новое действие вручную. Добавьте новый метод к контроллеру, обновите файл маршрутов и добавьте представление. Это, вероятно, займет не более 1 минуты. Кроме того, если вы не используете контроллер версии (который ваш вопрос ускользнул), вам не придется беспокоиться о том, что он автоматически перезаписывает что-то.
Ответ 2
мы можем вручную создать действие в контроллере и просмотреть, но вы также должны добавить тестовые утверждения, которые должны быть хорошим автоматическим процессом, что-то вроде рельсов, генерирует опцию контроллера NAME [action action] m
m = слияние
Ответ 3
Рельсы обеспечивают возможность создания настраиваемых генераторов (но это более продвинутый объект), которые могут быть адаптированы для ваших нужд.
Дополнительная информация:
http://guides.rubyonrails.org/generators.html