instance method fresh_when

Ruby on Rails 2.2.3

Since v2.2.3 Last seen in v2.3.18

Available in: v2.2.3 v2.3.18

Signature

fresh_when(options)

Sets the etag, last_modified, or both on the response and renders a “304 Not Modified” response if the request is already fresh.

Example:

def show
  @article = Article.find(params[:id])
  fresh_when(:etag => @article, :last_modified => @article.created_at.utc)
end

This will render the show template if the request isn’t sending a matching etag or If-Modified-Since header and just a “304 Not Modified” response if there’s a match.

Parameters

options req
Source
# File actionpack/lib/action_controller/base.rb, line 1129
      def fresh_when(options)
        options.assert_valid_keys(:etag, :last_modified)

        response.etag          = options[:etag]          if options[:etag]
        response.last_modified = options[:last_modified] if options[:last_modified]

        if request.fresh?(response)
          head :not_modified
        end
      end

Defined in actionpack/lib/action_controller/base.rb line 1129 · View on GitHub · Improve this page · Find usages on GitHub

Defined in ActionController::Base

Type at least 2 characters to search.

↑↓ navigate · open · esc close