I work with a lot of designers. The question I get all the time is:
Where is the template that displays xyz? I was thinking it would be
nice if rails would print the name of each template it loads as an
html comment like so:
etc..
Not having to answer these questions all day would really make my day.
I poked around the rails code for a couple hours and don’t see an
obvious way. Does anyone have an idea on how to do this?
I work with a lot of designers. The question I get all the time is:
Where is the template that displays xyz? I was thinking it would be
nice if rails would print the name of each template it loads as an
html comment like so:
Seems like you can do this by overriding render_template in
template.rb. Seems like a fairly handy idea actually, when I have
worked with designers that’s definitely a question that has come up
often!
For now, I just slapped this in a file in lib and include it in
environment.rb:
module ActionView
class Template
def render_template(view, local_assigns = {})
“\n” + render(view,
local_assigns)
rescue Exception => e
raise e unless filename
if TemplateError === e
e.sub_template_of(self)
raise e
else
raise TemplateError.new(self, view.assigns, e)
end
end
end
end
Works in Rails 2.3 anyway. I’m sure there is a cleaner way, and it
should probably be made into an environment specific config option.
But I’m in a hurry right now.
I’m using it and it’s cool, but it should probably check if any layout
statement is present on the controller: if layout is nil then I
probably don’t need/want any comment in the template
(found this with the :tex view of instiki clone)
thanks 4 the plugin!
On Fri, Apr 3, 2009 at 10:50 AM, Frederick C. [email protected] wrote:
I’m using it and it’s cool, but it should probably check if any layout
statement is present on the controller: if layout is nil then I
probably don’t need/want any comment in the template
More precisely if what it’s rendering isn’t html it probably shouldn’t
be putting html comments in!