有没有办法从application.rb执行此操作?
答案 0 :(得分:76)
编辑:简短回答
如果要在运行生成器的每个时间内执行此操作,您确实在application.rb文件中对其进行了自定义。将此代码放在Application类定义中的文件中。
config.generators do |g|
g.view_specs false
g.helper_specs false
end
您也可以通过将一些选项传递给generator命令来完成此操作。 This Railscast更详细地讨论了这个过程,但基本思路非常简单。
Rails生成器可以有多种选择。您可以通过运行rails g controller -h
来查看控制器生成器的选项。假设您已经设置了Rspec,如果查看输出,您会注意到一个显示“Rspec选项”的部分。它看起来像这样:
Rspec options:
[--controller-specs] # Indicates when to generate controller specs
# Default: true
[--view-specs] # Indicates when to generate view specs
# Default: true
要取消这些布尔值,只需在名称前面输入“no”即可。因此,如果您想要一个没有视图规范的控制器,您可以这样称呼它:
rails g controller Foobar index show new create --no-view-specs
您将获得一个控制器,其中包含为您创建的正确视图和操作,但没有针对您的视图的规范。
如果您使用的是scaffold
生成器,则同样适用。有一个--helper-specs
选项,因此如果您不想查看或帮助规范,您可以运行:
rails g scaffold Foobar name:string --no-helper-specs --no-view-specs