为什么“g controller”也没有创建视图文件?

时间:2015-11-06 04:45:48

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-4 controller

我见过一些 Rails 示例,其中生成控制器也会创建视图文件(而不仅仅是视图文件夹)。

Rails Guide 6.4 部分中,它显示一个空的视图文件夹,没有视图文件。这是我的本地安装正在做的事情。我没有得到任何视图文件。

运行rails g controller ...时,是否有某种方法让 Rails 自动生成视图文件?或者,这个人是否更有可能手动创建视图文件并且没有显示该部分?

3 个答案:

答案 0 :(得分:5)

使用rails generate scaffold代替,它将在一次操作中为您生成模型,视图和控制器文件。

  

如果要为新建模型,视图和控制器   在一次操作中,脚手架就是工作的工具。

e.g:

rails g scaffold Post name:string title:string content:text

但是,如果您真的想使用rails g controller并为您创建视图文件,则必须为控制器指定action名称:

rails g controller Controllername index show edit update

这样,它将为这四个操作创建视图文件:app/views/.../index.html.erbapp/views/.../edit.html.erb。 。 。等

但是,看看你的情况,你应该使用脚手架,因为它会为你做很多工作。

答案 1 :(得分:2)

要生成基本视图和控制器操作,您应该运行例如:rails g controller Controllername index show

将创建索引和显示操作的基本视图。

答案 2 :(得分:1)

如果我使用RubyMine创建一个api项目(New Project> Rails Api Project),我会遇到同样的问题。第一个项目是在cli(rails new)上创建的,在RM中是第二个:

Arguments

解决方案是创建新的"应用程序项目"而不是新的" Api项目"在RM。