Hi,
I ran into a problem with a template named _tag.haml this day. I
searched this group and found some post with a related (maybe the
same?) problem, but no solution:
'Strange Haml Interference with @tags or Tag.find(:all)'
http://groups.google.com/group/haml/browse_thread/thread/9d37159348fc0c52
I tried to reply to the post, but I was unable to do that, so I made a
new one.
Currently I ran Version 1.5.2 of haml within rails, and now to the
point:
Like Russel Norris, I have a model named 'Tag' too, and at some point
in the code, I use a template for instances of Tag:
# .../views/.../list.haml
[...]
#content
=render :partial => @selection.to_s.downcase, :collection =>
@content
[...]
in which @selection is either Tag or Feed (both are instance of Class,
representing models) and @content is an array of instances of either
Tag or Feed. Within the _feed.haml template all went good. And here is
the _tag.haml template:
# .../views/.../_tag.haml
.tag
.icon= image_tag 'unknown.png' unless tag.icon == ''
.name= tag.name
.tag_new= tag.tag_new? ? 'Y' : 'N'
what happens is, that the rails helper image_tag gets screwed up. It
produces something like:
<div class='tag'>
<div class='icon'>#<Tag:0xb6880d7c></div>
<div class='name'>12345</div>
<div class='tag_new'>N</div>
</div>
whereas the following rhtml code (after removing the _tag.haml file)
# .../views/.../_tag.rhtml
<div class='tag'>
<div class='icon'><%= image_tag 'unknown.png' unless tag.icon ==
''%></div>
<div class='name'><%= tag.name%></div>
<div class='tag_new'><%= tag.tag_new? ? 'Y' : 'N'%></div>
</div>
is producing
<div class='tag'>
<div class='icon'><img alt="Unknown" src="/images/unknown.png?
1182104186" /></div>
<div class='name'>12345</div>
<div class='tag_new'>N</div>
</div>
Until now, I havn't found another problem with the Tag model. I will
stick with the rhtml at the moment, it's not THAT ugly (... ok, it
is :).
I hope that helps with fixing the bug, or finding a workaround.
btw I tried
.icon= self.send(:image_tag, 'unknown.png') unless tag.icon == ''
in the _tag.haml template, which resulted in the same error.
~ Jarod
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Haml" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/haml?hl=en
-~----------~----~----~----~------~----~------~--~---