代码之家  ›  专栏  ›  技术社区  ›  Jarrod

是否使用rails生成器修改现有文件?

  •  2
  • Jarrod  · 技术社区  · 16 年前

    2 回复  |  直到 16 年前
        1
  •  2
  •   m104    16 年前

    initializers 对于自定义初始化代码,但如果你发现使用生成器添加到现有文件是合适的,那么内置生成器是这样做的:

    # Excerpted from template_runner.rb
    
    # Make an entry in Rails routing file config/routes.rb 
    def route(routing_code)
      log 'route', routing_code
      sentinel = 'ActionController::Routing::Routes.draw do |map|'
    
      in_root do
        gsub_file 'config/routes.rb', /(#{Regexp.escape(sentinel)})/mi do |match|
          "#{match}\n  #{routing_code}\n"
        end
      end
    end
    

    正如你所看到的,这只是弄清楚他们想要代码去哪里( sentinal 线)并在其之后立即填充新线。

        2
  •  2
  •   x6iae user3772547    9 年前

    与其修改environment.rb,不如看看你能用它做什么 Rails initializers 。基本上,您只需在config/initializers中创建一个新的Ruby.rb文件,并将配置加载代码保存在其中。如果你需要针对每个环境进行配置,最好在config/中创建另一个(通常是YAML)文件,该文件将存储针对每个环境的配置变量,并将该YAML加载到初始化器中。