aboutsummaryrefslogtreecommitdiffstats
path: root/actionpack/lib/action_view/helpers/cache_helper.rb
Commit message (Collapse)AuthorAgeFilesLines
* view_cache_dependency APIJamis Buck2013-01-081-1/+1
| | | | | | | | | | | | | A declarative API for specifying dependencies that affect template cache digest computation. In your controller, specify any of said dependencies: view_cache_dependency { "phone" if using_phone? } When the block is evaluated, the resulting value is included in the cache digest calculation, allowing you to generate different digests for effectively the same template. (Mostly useful if you're mucking with template load paths.)
* Improve the documentation of cache_if and cache_unlessRafael Mendonça França2012-12-141-4/+7
|
* Removed :if and :unless from fragment cache option in favour ofAngelo capilleri2012-12-141-12/+24
| | | | | | | | | | | | | | | | | | | | | | | cache_if(condition, option, &block) and cache_unless(condition, option, &block). In the PR #8371 was introduced conditional options :if and :unless in the cache method. Example: <%= cache @model, if: some_condition(@model) do %> ... <%end%> This is a good feature but *cache_if* and and *cache_unless* are more concise and close to the standard of rails view helpers (ex: link_to_if and link_to_unless). Example: <%= cache_if condition, @model do %> ... <%end%>
* Allow fragment cache to accept :if and :unless optionsFabrizio Regini2012-12-051-1/+13
| | | | [Stephen Ausman + Fabrizio Regini]
* Cleanup CacheHelper changes allowing opt-out of cache digestsDrew Ulmer2012-11-271-2/+2
| | | | | | | | | | Instead of deleting the skip_digest option flag, this changes the method to merely check the key. This change is because of a discussion in this thread: https://github.com/rails/rails/pull/8317 This commit also makes #fragment_name_with_digest private due to its functionality being subsumed by #cache_fragment_name.
* Add explicit opt-out for fragment cache digestingDrew Ulmer2012-11-251-1/+23
| | | | | | | | | This add support for sending an explicit opt-out of the "Russian-doll" cache digest feature on a case-by-case basis. This is useful when cache- expiration needs to be performed manually and it would be otherwise difficult to know the exact name of a digested cache key. More information: https://github.com/rails/cache_digests/pull/16
* Fix nodoc commentRafael Mendonça França2012-10-071-16/+15
|
* Add nodoc to now public fragment_name_with_digestRyan Garver2012-10-041-0/+1
|
* Move the CacheHelper#fragment_name_with_digest to be public so custom ↵Ryan Garver2012-09-271-11/+11
| | | | fragment caching can benefit from it.
* Add automatic template digests to all CacheHelper#cache calls (originally ↵David Heinemeier Hansson2012-08-291-9/+93
| | | | spiked in the cache_digests plugin) *DHH*
* Modernize the documentation for view caching somewhatDavid Heinemeier Hansson2012-08-081-16/+16
|
* Removing ==Examples and last blank lines of docs from actionpackFrancesco Rodriguez2012-05-151-1/+0
|
* Merge pull request #2219 from kommen/fix_fragment_caching_squashedSantiago Pastorino2011-10-131-1/+1
| | | | Fix fragment caching (squashed commits)
* Only mark the sliced buffer as safe, if it was safe to begin with.Christopher Meiklejohn2011-06-201-1/+2
|
* Streamline fragment_for SafeBuffer logic to make it more concise.Christopher Meiklejohn2011-06-201-6/+3
|
* Adapt [823aa223efbac6ad4d31ea33402892267bb77cb4] to make sure we perform ↵Prem Sichanugrist2011-06-081-3/+7
| | | | | | cloning before manipulation only on `OutputBuffer`. After the fragment rendering, `Builder` returns the `String` object instead of `ActionView::OutputBuffer`. Somehow the same procedure which was in [823aa223efbac6ad4d31ea33402892267bb77cb4] does not play nice with the String, and result in the fragment got lost.
* Fragment caching needs to operate on the pure output, not theChristopher Meiklejohn2011-06-071-1/+3
| | | | safebuffer.
* Remove extra whitespace.Sebastian Martinez2011-05-101-1/+1
|
* Issue one Cache#read command instead of two in the case of a fragment cache hitChristos Trochalakis2011-01-181-2/+2
|
* More minor edits.Rizwan Reza2010-12-231-5/+5
|
* Revised documentation for cache_helper.Rizwan Reza2010-12-231-12/+10
|
* Adds title and description where needed.Rizwan Reza2010-06-161-2/+4
|
* Fixed double output from cache in no caching modeDavid Heinemeier Hansson2010-06-081-14/+14
|
* All tests pass without memoizing view_contextCarlhuda2010-03-181-1/+21
|
* Some more tweaks on <% %>.Carlhuda2010-03-161-1/+2
| | | | * The cache helper is now semantically "mark this region for caching" * As a result, <% x = cache do %> no longer works
* Add deprecation notices for <% %>.Carlhuda2010-03-151-1/+1
| | | | | | | | | | | | | | | | * The approach is to compile <% %> into a method call that checks whether the value returned from a block is a String. If it is, it concats to the buffer and prints a deprecation warning. * <%= %> uses exactly the same logic to compile the template, which first checks to see whether it's compiling a block. * This should have no impact on other uses of block in templates. For instance, in <% [1,2,3].each do |i| %><%= i %><% end %>, the call to each returns an Array, not a String, so the result is not concatenated * In two cases (#capture and #cache), a String can be returned that should *never* be concatenated. We have temporarily created a String subclass called NonConcattingString which behaves (and is serialized) identically to String, but is not concatenated by the code that handles deprecated <% %> block helpers. Once we remove support for <% %> block helpers, we can remove NonConcattingString.
* Make @controller an internal ivar in the viewJoshua Peek2010-01-221-1/+1
|
* Get buffer for fragment cache from template's @output_bufferJoshua Peek2008-07-151-1/+1
|
* Made ActionView::Base#first_render a little more private. And added ↵Joshua Peek2008-07-131-2/+1
| | | | _last_render to track the most recent render. Will fix #609 as a side effect. [#609 state:resolved]
* Revert "Moved TemplateHandlers to Base"Joshua Peek2008-07-031-1/+1
| | | | | | | | | This reverts commit 42d215a925a228778e43f7040f03ad8f3eb5341c. Conflicts: actionpack/lib/action_view/inline_template.rb actionpack/lib/action_view/template.rb
* Moved TemplateHandlers to BaseJoshua Peek2008-07-031-1/+1
|
* Moved template handlers related code from ActionView::Base to ↵Pratik Naik2008-03-051-1/+1
| | | | | | ActionView::Template git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8981 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix missing extension for caching. Closes #10733 [Catfish, tcoppock, mpalmer]Jeremy Kemper2008-02-031-2/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8791 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Reapply the TemplateFinder first applied in [8669] then reverted in [8676]. ↵Michael Koziarski2008-01-211-1/+1
| | | | | | Closes #10800 [lifofifo] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8683 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Revert r8669 for now, breaks Action Mailer. Reopens #10800.Jeremy Kemper2008-01-191-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8676 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Introduce TemplateFinder to handle view paths and lookups. Closes #10800.Jeremy Kemper2008-01-191-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8669 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix a few caching errors, expose a case thats still not working (ref #107330 ↵David Heinemeier Hansson2008-01-121-2/+2
| | | | | | [catfish] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8630 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Move fragment caching from special helper methods to TemplateHandler. Closes ↵Jeremy Kemper2008-01-101-17/+2
| | | | | | #10754 [Josh Peek] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8619 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fix CacheHelper#cache (closes #10733) [mindforge]David Heinemeier Hansson2008-01-101-8/+7
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8614 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Moved the caching stores from ActionController::Caching::Fragments::* to ↵David Heinemeier Hansson2008-01-031-6/+10
| | | | | | ActiveSupport::Cache::*. If you're explicitly referring to a store, like ActionController::Caching::Fragments::MemoryStore, you need to update that reference with ActiveSupport::Cache::MemoryStore [DHH] Deprecated ActionController::Base.fragment_cache_store for ActionController::Base.cache_store [DHH] All fragment cache keys are now by default prefixed with the 'views/' namespace [DHH] Added ActiveRecord::Base.cache_key to make it easier to cache Active Records in combination with the new ActiveSupport::Cache::* libraries [DHH] Added ActiveSupport::Gzip.decompress/compress(source) as an easy wrapper for Zlib [Tobias Luetke] Included MemCache-Client to make the improved ActiveSupport::Cache::MemCacheStore work out of the box [Bob Cottrell, Eric Hodel] Added config.cache_store to environment options to control the default cache store (default is FileStore if tmp/cache is present, otherwise MemoryStore is used) [DHH] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8546 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Made fragment caching in views work for rjs and builder as well (closes ↵David Heinemeier Hansson2008-01-031-1/+15
| | | | | | #6642) [zsombor] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@8542 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Massive documentation update for all helpers (closes #8223, #8177, #8175, ↵David Heinemeier Hansson2007-06-231-0/+29
| | | | | | #8108, #7977, #7972, #7971, #7969) [jeremymcanally] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@7106 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Fixed no-binding fragment cachingDavid Heinemeier Hansson2005-01-201-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@473 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Removed the need for passing the binding when using CacheHelper#cacheDavid Heinemeier Hansson2005-01-201-1/+1
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@472 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Updated to new naming styleDavid Heinemeier Hansson2005-01-111-2/+2
| | | | git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@389 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Updated caching to include action caching as well and simplified the ↵David Heinemeier Hansson2005-01-101-1/+2
| | | | | | name/key reference to just be name git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@368 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
* Added first stab at page and fragment cachingDavid Heinemeier Hansson2005-01-081-0/+9
git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@346 5ecf4fe2-1ee6-0310-87b1-e25e094e27de