Создайте контроллер со всеми функциями RESTful
Я пытаюсь создать контроллер со всеми действиями RESTful, которые были заглушены. Я прочитал в текст ссылки, что все, что мне нужно было сделать, это использовать генератор с именем контроллера только для этого. Итак, я запустил "script/generate rspec_controller Properties", и я получил пустой контроллер.
Приветствуются любые другие предложения.
Ответы
Ответ 1
Я не знаю о автоматизированном способе его выполнения, но если вы это сделаете:
script/generate controller your_model_name_in_plural new create update edit destroy index show
Все они будут созданы для вас
Обновление для Rails 4
rails g scaffold_controller Property
Ответ 2
В Rails 3 также есть rails generate scaffold_controller ...
. Подробнее здесь.
Ответ 3
РЕДАКТИРОВАТЬ (из-за некоторых комментариев): Оригинальный вопрос был в 2010 году - отсюда ответ НЕ для RAILS 4, но для рельсов 2!!
попробуйте использовать строительные леса.
script/generate scaffold controller Properties
Раздел официальных документов по Ruby On Rails
Я уверен, что вы можете найти больше информации, если вы выполните поиск google в rails scaffolding. Надеюсь, что это поможет.
EDIT:
Для RAILS 4
rails g scaffold_controller Property
Ответ 4
Вы ищете строительные леса.
Try:
script/generate scaffold Property
Это даст вам контроллер, модель, миграцию и связанные тесты. Вы можете пропустить миграцию с помощью опции --skip-migration
. Если вы не хотите других, вам придется удалить их самостоятельно. Не беспокойтесь о перезаписывании существующих файлов, это не произойдет, если вы не используете --force
.
Как отмечает klew в комментариях, это также определяет тела методов для вас, а не только имена. Очень полезно использовать в качестве отправной точки для вашего контроллера REST.
Ответ 5
В Rails 4/5 следующая команда делает трюк для меня.
rails g scaffold_controller Property --skip-template-engine
Он генерировал действия контроллера, но не вид.
Ответ 6
В Rails 4 он rails g controller apps new create update edit destroy show index
Или rails generate controller apps new create update edit destroy show index
, если вы хотите записать полный термин:).
Ответ 7
script/generate rspec_scaffold Свойство
Ответ 8
Нет никакого способа (что я знаю?, который документирован?), чтобы заглушить контроллер, кроме как через строительные леса. Но вы могли бы сделать:
script/generate controller WhateverController new create edit update destroy show
Ответ 9
Одним из решений является создание script, который принимает один параметр, имя контроллера и позволяет script вводить всю команду для вас.
- Создайте новый файл, скажем, railsgcontroller
- Сделать его исполняемым и сохранить его на пути
- Запустите его, как:
Статьи $railsgcontroller
die () {
echo "Please supply new rails controller name to generate."
echo >&2 "[email protected]"
exit 1
}
[ "$#" -eq 1 ] || die "1 argument required, $# provided"
rails g controller "$1" new create update edit destroy show index
Ответ 10
Rails 5.1
Начальная точка:
Вы создали модель без контроллера или представлений (например, через: rails generate model category
)
Цель:
Обновите его до полного ресурса RESTful
Команда:
rails generate scaffold_controller category
Он заглушает контроллер леса, его семь действий RESTful и связанные с ними взгляды. (Примечание. Вы можете либо передать имя модели CamelCased, либо under_scored.)
Вывод:
[email protected]:~/railsapps/dblirish$ rails generate scaffold_controller category
Running via Spring preloader in process 45681
create app/controllers/categories_controller.rb
invoke erb
create app/views/categories
create app/views/categories/index.html.erb
create app/views/categories/edit.html.erb
create app/views/categories/show.html.erb
create app/views/categories/new.html.erb
create app/views/categories/_form.html.erb
invoke test_unit
create test/controllers/categories_controller_test.rb
invoke helper
create app/helpers/categories_helper.rb
invoke test_unit
invoke jbuilder
create app/views/categories/index.json.jbuilder
create app/views/categories/show.json.jbuilder
create app/views/categories/_category.json.jbuilder