我正在尝试生成一个控制器,其中包含所有RESTful操作.我在链接文本中读到,我需要做的就是使用只有控制器名称来调用生成器,我会得到它.所以,我运行了"script/generate rspec_controller Properties",我得到了一个空的控制器.
任何其他建议将不胜感激.
我不知道这样做的自动化方法,但如果你这样做:
script/generate controller your_model_name_in_plural new create update edit destroy index show
所有这些都将为您创建
Rails更新4
rails g scaffold_controller Property
在Rails 3中也有rails generate scaffold_controller ...
.更多信息在这里.
编辑(由于一些评论):原始问题是在2010年 - 因此答案不是铁路4,而是铁路2 !!
尝试使用脚手架.
script/generate scaffold controller Properties
关于Ruby On Rails的官方文档部分
如果你在rails scaffolding上进行Google搜索,我相信你可以找到更多信息.希望有所帮助.
编辑: 对于RAILS 4
rails g scaffold_controller Property
在Rails 4/5中,以下命令对我有用.
rails g scaffold_controller Property --skip-template-engine
它生成了控制器操作,但没有生成视图.
Rails 5.1
您已经创建无控制器的模型,也没有意见(如通:rails generate model category
)
将其升级到完整的RESTful资源
rails generate scaffold_controller category
它存储了一个脚手架控制器,七个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控制器作为起点非常有用.
在Rails 4中它是 rails g controller apps new create update edit destroy show index
或者rails generate controller apps new create update edit destroy show index
如果你想写出完整的术语:).