Forum: Ruby on Rails Helper content_tag and Blocks

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
Jordan M. (Guest)
on 2007-03-15 20:46
The content_tag helper allows you to do things like:

content_tag(:p, "Hello world!")
# => <p>Hello world!</p>

It can take in blocks, for functionality like this:

<% content_tag :div, :class => "strong" do -%>
   Hello world!
<% end -%>
# => <div class="strong"><p>Hello world!</p></div>

Unfortunately blocks only work in erb and not as helper methods.  This
problem already has a ticket

Greg Pierce has come up with a fix but
I'm looking for more.

I'd like to write something along the lines of

content_tag :table do
  content_tag :tr do
    content_tag :td, "first"
    content_tag :td, "second"

With Greg's fix, that code doesn't crash at least, but the
line only returns the second td tag.  I generally understand what the
problem is, but my skills with Ruby blocks are coming up short.  Anyone
have an idea how to fix this?
Greg Pierce (Guest)
on 2007-03-17 04:58
If you want to write HTML like that, you should look at <a

This topic is locked and can not be replied to.