def content_for( obj, string = nil, &block )
    return @content_for[obj] unless string || block_given?
 
    cur = @content_for[obj].to_s
    new = string.to_s + (block_given? ? capture_erb(&block) : "")
    @content_for[obj] = cur + new
  end
def content_for( obj, string = nil, &block )
    return @content_for[obj] unless string || block_given?
 
    cur = @content_for[obj].to_s
    new = string.to_s + (block_given? ? capture_erb(&block) : "")
    @content_for[obj] = cur + new
  end
Called in pages and partials to store up content for later use. Takes a
 string and/or a block. First, the string is evaluated, and then the
 block is captured using the capture() helper provided by the template
 languages. The two are concatenated together.

 Content is retrieved by calling the method without a string or a block.

 ==== Parameters
 obj<Object>:: The key in the content_for hash.
 string<String>:: Textual content. Defaults to nil.
 &block:: A block to be evaluated and concatenated to string.

 ==== Returns
 Any content associated with the key (or nil).

 ==== Example
   content_for(:foo, "Foo")
   content_for(:foo)             #=> "Foo"
   content_for(:foo, "Bar")
   content_for(:foo)             #=> "FooBar"