Spec-Zone.ru › Ruby on Rails 4.2

модуль ActionController::ConditionalGet::ClassMethods

Публичные методы экземпляра

etag(&etagger) Показать исходный код
# File actionpack/lib/action_controller/metal/conditional_get.rb, line 30
def etag(&etagger)
  self.etaggers += [etagger]
end

Позволяет учитывать дополнительную информацию, относящуюся ко всему контроллеру, при формировании ETag. Например, если вы отображаете страницы, настроенные в зависимости от того, кто в данный момент авторизован, вы можете добавить идентификатор текущего пользователя в ETag, чтобы предотвратить отображение кэшированных страниц авторизованными пользователями.

class InvoicesController < ApplicationController
  etag { current_user.try :id }

  def show
    # Etag will differ even for the same invoice when it's viewed by a different current_user
    @invoice = Invoice.find(params[:id])
    fresh_when(@invoice)
  end
end

© 2004–2018 David Heinemeier Hansson
Licensed under the MIT License.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API