方法
- E
實體公有方法
etag(&標籤) 連結
允許你在產生 ETag 時考慮其他與控制器相關的資訊。例如,如果你根據目前已登入者提供客製化的網頁,你可能希望將目前使用者的 ID 加入 ETag,以避免未經授權的快取網頁顯示。
class InvoicesController < ApplicationController
etag { current_user&.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 etag: @invoice
end
end
來源: 顯示 | 在 GitHub 上
# File actionpack/lib/action_controller/metal/conditional_get.rb, line 33 def etag(&etagger) self.etaggers += [etagger] end