Froze rails gems
[depot.git] / vendor / rails / actionpack / lib / action_view / helpers / cache_helper.rb
diff --git a/vendor/rails/actionpack/lib/action_view/helpers/cache_helper.rb b/vendor/rails/actionpack/lib/action_view/helpers/cache_helper.rb
new file mode 100644 (file)
index 0000000..64d1ad2
--- /dev/null
@@ -0,0 +1,39 @@
+module ActionView
+  module Helpers
+    # This helper to exposes a method for caching of view fragments.
+    # See ActionController::Caching::Fragments for usage instructions.
+    module CacheHelper
+      # A method for caching fragments of a view rather than an entire
+      # action or page.  This technique is useful caching pieces like
+      # menus, lists of news topics, static HTML fragments, and so on.
+      # This method takes a block that contains the content you wish
+      # to cache.  See ActionController::Caching::Fragments for more
+      # information.
+      #
+      # ==== Examples
+      # If you wanted to cache a navigation menu, you could do the
+      # following.
+      #
+      #   <% cache do %>
+      #     <%= render :partial => "menu" %>
+      #   <% end %>
+      #
+      # You can also cache static content...
+      #
+      #   <% cache do %>
+      #      <p>Hello users!  Welcome to our website!</p>
+      #   <% end %>
+      #
+      # ...and static content mixed with RHTML content.
+      #
+      #    <% cache do %>
+      #      Topics:
+      #      <%= render :partial => "topics", :collection => @topic_list %>
+      #      <i>Topics listed alphabetically</i>
+      #    <% end %>
+      def cache(name = {}, options = nil, &block)
+        @controller.fragment_for(output_buffer, name, options, &block)
+      end
+    end
+  end
+end