Dan Oved
2013-Aug-29 15:33 UTC
Where is the code that lets you override the templates that the generators use?
In the rails documentation, it states that: In Rails 3.0 and above, generators don''t just look in the source root for templates, they also search for templates in other paths. And one of them is lib/templates. Since we want to customize Rails::Generators::HelperGenerator, we can do that by simply making a template copy inside lib/templates/rails/helper with the name helper.rb. I''m trying to dig through the rails source code to see where this lookup occurs. I''ve gotten this far. In railties/lib/rails/generators/rails/helper/helper_generator.rb<https://github.com/rails/rails/blob/master/railties/lib/rails/generators/rails/helper/helper_generator.rb>, the code template ''helper.rb'', File.join(''app/helpers'', class_path, "#{file_name}_helper.rb") seems to be calling the super class'' method ( railties/lib/rails/generators/named_base.rb<https://github.com/rails/rails/blob/master/railties/lib/rails/generators/named_base.rb> ): # Defines the template that would be used for the migration file. # The arguments include the source template file, the migration filename etc. no_tasks do def template(source, *args, &block) inside_template do super end end end This in turn inherits from name_base inherits from base, but the method "template" doesnt seem to appear in that class. Where can I find the code that does this lookup? -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To post to this group, send email to rubyonrails-talk-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/2328b9a7-c5f2-4146-b375-99fd66fd73bb%40googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.