为我正在开发的轨道ORM宝石创建铁路的问题

时间:2012-06-03 17:19:24

标签: ruby ruby-on-rails-3 orm redis

我正在开发一个Ruby gem,Ampere,它充当Redis数据库的ORM。我试图支持它的Rails集成,并且能够绑定初始化器和控制台钩子,但我的生成器还没有工作。我有一个生成器,ampere:config可以安装默认配置YAML文件,也可以替换模型生成器。

当我将gem安装到测试Rails应用程序中时,ampere:config生成器在命令行上运行rails generate时显示在列表中,但是当我键入rails g ampere:config时,我得到:

Could not find generator ampere:config.

,没有别的。我的生成器位于gem中的“lib / rails / generators / config /”中,显然Rails知道它,因为它出现在rails g列表中,但有些东西不对。如果有人可以帮助或知道一些比Rails指南更好的文档,这些指南至少可以说是稀疏的,我们非常感激。

1 个答案:

答案 0 :(得分:1)

好的,我终于明白了。为了让生成器工作,他们必须使用模板的相对路径调用source_root,并且必须使用lib/rails/generators/your_gem_name/,然后your_gem_name/中的目录结构就是你所要的希望阅读文档(或在Rails项目中运行rails g generator)。

文档对此并不十分清楚,所以有点令人困惑,但在看了几个例子之后我尝试了这个并且它有效。