すべてのRESTfulアクションをスタブ化したコントローラーを生成しようとしています。私はウィキブックスで読んだことがあります-Rubyon Railsは、コントローラー名を使用してジェネレーターを呼び出すだけで、それを取得できます。それで、私は走りましscript/generate rspec_controller Properties
たが、空のコントローラーを手に入れました。
他の提案をいただければ幸いです。
すべてのRESTfulアクションをスタブ化したコントローラーを生成しようとしています。私はウィキブックスで読んだことがあります-Rubyon Railsは、コントローラー名を使用してジェネレーターを呼び出すだけで、それを取得できます。それで、私は走りましscript/generate rspec_controller Properties
たが、空のコントローラーを手に入れました。
他の提案をいただければ幸いです。
回答:
自動化された方法についてはわかりませんが、もしそうなら:
script/generate controller your_model_name_in_plural new create update edit destroy index show
それらのすべてがあなたのために作成されます
Rails4のアップデート
rails g scaffold_controller Property
route get "mycontroller/create"
(作成は投稿である必要があります)
Rails3にはもありrails generate scaffold_controller ...
ます。詳細はこちら。
rails g controller Foos create
すると、get '/create'
RESTfulではないルートが生成されます。
編集(いくつかのコメントによる):元の質問は2010年でした-したがって、答えはRAILS 4ではなく、Rails2です!!
足場を使ってみてください。
script/generate scaffold controller Properties
Railsの足場でグーグル検索を行うと、より多くの情報を見つけることができると確信しています。お役に立てば幸いです。
編集: RAILS4の場合
rails g scaffold_controller Property
rails g scaffold_controller Property
ます。これにより、モデルなしで、7つすべてのデフォルトのRESTfulアクションとそれぞれのビューを持つPropertiesControllerが作成されます。
Rails 5.1
あなたは(例えばスルー:コントローラなしのモデル、またビューを作成しましたrails generate model category
)
完全なRESTfulリソースにアップグレードします
rails generate scaffold_controller category
スキャフォールドコントローラー、7つのRESTfulアクション、および関連するビューをスタブアウトします。(注:モデル名CamelCasedまたはunder_scoredのいずれかを渡すことができます。)
varus@septimusSrv16DEV4:~/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
あなたは足場を探しています。
試してみてください:
script/generate scaffold Property
これにより、コントローラー、モデル、移行、および関連するテストが提供されます。オプションを使用すると、移行をスキップできます--skip-migration
。他の人が欲しくない場合は、自分で削除する必要があります。を使用しない限り、既存のファイルの上書きについて心配する必要はありません--force
。
klewがコメントで指摘しているように、これは名前だけでなく、メソッド本体も定義します。RESTコントローラーの開始点として使用すると非常に便利です。
Rails4では rails g controller apps new create update edit destroy show index
またはrails generate controller apps new create update edit destroy show index
、全文を書きたい場合:)。
rails g scaffold_controller apps
Rails 4
スクリプト/生成rspec_scaffoldプロパティ
1つの解決策は、1つのパラメーター、コントローラー名を受け入れるスクリプトを作成し、スクリプトにコマンド全体を入力させることです。
die () {
echo "Please supply new rails controller name to generate."
echo >&2 "$@"
exit 1
}
[ "$#" -eq 1 ] || die "1 argument required, $# provided"
rails g controller "$1" new create update edit destroy show index