使用gem

时间:2016-06-16 08:23:27

标签: ruby-on-rails ruby ruby-on-rails-3 rubygems

我正在为rails开发一个gem,我坚持这个问题。我的逻辑是我创建了一个gem,并将gem安装到我的本地机器上。我需要的是当我输入gem_name --install时,应该将一个名为test.rb的文件复制到rails project/ config/initializers/内。要复制的文件当前放在我的gem中的文件夹中。我试过了

Dir.pwd

但它没有按预期给我结果。请为我和TIA找到解决方案..

1 个答案:

答案 0 :(得分:0)

对于rails gem,您可以将生成器与“模板”文件一起使用。

class FooGenerator < Rails::Generators::NamedBase
  source_root File.expand_path("../templates", __FILE__)

  def copy_initializer_file
    copy_file "initializer.rb", "config/initializers/#{file_name}.rb"
  end
end

当gem的用户运行rails generate foo时,这将复制文件。

请务必仔细阅读导轨指南部分on generatorscreating engines,因为有很多问题和惯例。