创建rails 3生成器



我正在创建一个rails生成器:

class TaggableGenerator < Rails::Generators::NamedBase
  source_root File.expand_path('../templates', __FILE__)
  hook_for :orm, :as => "model"
end

一切都很好,但我想设置在模型中创建的字段并创建多个模型,我找不到关于如何做到这一点的任何东西(我从查看设计生成器中获得了上述代码),最好是我想要它从通用(但它不是那么重要)。

以下是一些可能对您有所帮助的链接:
http://railscasts.com/episodes/218-making-generators-in-rails-3
http://guides.rubyonrails.org/generators.html

基本上,你只需要在你的类中添加方法来做你想做的事情(当调用生成器时,所有的公共方法都会被调用),这里是一个来自rails源代码的例子:

class AssetsGenerator < Rails::Generators::NamedBase
  source_root File.expand_path("../templates", __FILE__)
  def copy_stylesheet
    copy_file "stylesheet.css", File.join('app/assets/stylesheets', class_path, "#{file_name}.css")
  end
end

copy_file来自Thor,您可以在Thor引用中看到可用方法的列表:http://textmate.rubyforge.org/thor/Thor/Actions.html

相关内容

  • 没有找到相关文章

最新更新