如何在Rails脚手架中更改默认模型模板?

时间:2012-03-09 23:56:15

标签: ruby-on-rails model ruby-on-rails-3.2 scaffold

如果我想更改由Rails中的scaffold创建的默认控制器模板,那么它很容易 - 在谷歌搜索后我发现我可以将一个controller.rb文件放在lib / templates / rails / controller中,以便生成器接收而不是默认值。

我找不到任何解释我可以对模型文件做同样的事情。我不想建立一个单独的生成器,我只想:

> rails generate model foo 

根据我制作的model.rb模板创建foo.rb模型文件。

1 个答案:

答案 0 :(得分:1)

不确定这是不是一个好主意,但你可以在这里找到生成器代码:https://github.com/rails/rails/blob/master/railties/lib/rails/generators/rails/model/model_generator.rb

module Rails
  module Generators
    class ModelGenerator < NamedBase #metagenerator
      argument :attributes, :type => :array, :default => [], :banner => "field[:type][:index] field[:type][:index]"
      hook_for :orm, :required => true
    end
  end
end

根据this post,虽然您应该能够在lib/templates/rails/model中放置模板,但您可能需要根据to this

指定rake任务来指定模板的位置