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 Rails3:在自定义生成器中生成模型_Ruby On Rails - Fatal编程技术网

Ruby on rails Rails3:在自定义生成器中生成模型

Ruby on rails Rails3:在自定义生成器中生成模型,ruby-on-rails,Ruby On Rails,嘿,伙计们,我正在Rails 3.0.3中编写一个自定义Generatornamed shcaffold,我希望它根据传入模型名称的第一个参数生成一个活动记录模型和迁移 但是,当我运行该命令时,会出现以下错误: $ rails g shcaffold someclass error active_record [not found] 以下是我的生成器定义,存储在lib/generators/shcaffold/shcaffold_generator.rb中: class Shcaffo

嘿,伙计们,我正在Rails 3.0.3中编写一个自定义Generatornamed shcaffold,我希望它根据传入模型名称的第一个参数生成一个活动记录模型和迁移

但是,当我运行该命令时,会出现以下错误:

$ rails g shcaffold someclass
   error  active_record [not found]
以下是我的生成器定义,存储在lib/generators/shcaffold/shcaffold_generator.rb中:

class ShcaffoldGenerator < Rails::Generators::NamedBase
   include Rails::Generators::ResourceHelpers
   source_root File.expand_path('../templates', __FILE__)

   # Run Other Generators
   hook_for :model, :in => :rails, :required => true
end 

但是,唉,我一点运气都没有

没有详细的答案,但你应该从中得到启发:

另一个类似的问题,关于错误活动记录[not found]在下面区域的痛苦=

在这里:

如何解决:

保持在Rails::Generators名称空间内

这已经解决了大多数未发现的问题

将生成器配置为默认值。生成器模型空间中的任意位置

module Rails
  module Generators
    class Railtie < ::Rails::Engine
        if config.respond_to?(:app_generators)
            config.app_generators.orm = :my_own_model
         else
            config.generators.orm = :my_own_model
         end
      end
   end
end
而且你不会再有任何来自rails g的麻烦了


哎呀

酷,这是一个很好的开始。我想我可以根据自己的需要使用迁移模板。谢谢
module Rails
  module Generators
    class Railtie < ::Rails::Engine
        if config.respond_to?(:app_generators)
            config.app_generators.orm = :my_own_model
         else
            config.generators.orm = :my_own_model
         end
      end
   end
end