Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何命名不使用';I don’我生活在一个美丽的世界里_Ruby On Rails_Thor_Rails Generate - Fatal编程技术网

Ruby on rails 如何命名不使用';I don’我生活在一个美丽的世界里

Ruby on rails 如何命名不使用';I don’我生活在一个美丽的世界里,ruby-on-rails,thor,rails-generate,Ruby On Rails,Thor,Rails Generate,我很困惑 我使用的一个名为gem的工具提供了甜美的命名空间生成器。我可以从命令行调用它们 $railsg主干:模型小部件 现在,是我制作sweet生成器的时候了,但我在名称空间方面遇到了麻烦。我做过研究,读过书,甚至。我最终得到的结构是: lib/generators/ └── marionette └── model ├── model_generator.rb ├── templates └── USAGE model_generat

我很困惑

我使用的一个名为gem的工具提供了甜美的命名空间生成器。我可以从命令行调用它们

$railsg主干:模型小部件

现在,是我制作sweet生成器的时候了,但我在名称空间方面遇到了麻烦。我做过研究,读过书,甚至。我最终得到的结构是:

lib/generators/
└── marionette
    └── model
        ├── model_generator.rb
        ├── templates
        └── USAGE
model_generator.rb
的内容包括:

module Marionette
  module Generators
    class ModelGenerator < Rails::Generators::NamedBase
      source_root File.expand_path('../templates', __FILE__)
    end
  end
end
我实际上添加了
backbone:bob
我自己,当我运行
railsg
sans参数时,它随后显示在名称空间主干下的生成器列表中。这里还有
model_generator.rb
的内容

require 'generators/backbone/helpers'

module Backbone
  module Generators
    class ModelGenerator < Rails::Generators::NamedBase
      include Backbone::Generators::Helpers

      source_root File.expand_path("../templates", __FILE__)

      // the implementation

    end
  end
end
需要“生成器/主干网/助手”
模块主干
模块生成器
类ModelGenerator
我能看到我的代码和他们的代码之间的唯一区别是,他们将自己的生成器打包在一个gem中。我的生成器在rails应用程序中运行,我目前正在开发该应用程序。现在我已经放弃了,我要做一堆顶级发电机。最后,当我准备好使用它们时,我会将它们打包为gem并安装它。我希望这会奏效。然而,我真的很想知道如何在不让生成器存在于gem中的情况下命名它们。任何人有相关经验吗?

使用:

$rails生成生成器您的gem\u name/generator\u name

然后检查:


$rails生成您的\u gem\u name:generator\u name--help

我也想知道怎么做,因为我的平台上有很多生成器,现在都是独立的。Ziggy,这可能有用:。您还可以查看devcloudcoder。
require 'generators/backbone/helpers'

module Backbone
  module Generators
    class ModelGenerator < Rails::Generators::NamedBase
      include Backbone::Generators::Helpers

      source_root File.expand_path("../templates", __FILE__)

      // the implementation

    end
  end
end