我尝试添加使用etag
添加的ETag与当前用户ID:Rails:为什么在before_action中etag不可用?
UsersController:Class < ApplicationController
etag { current_user.id } if user_signed_in?
end
但是失败,因为当控制器类中定义的设计助手不可用: undefined method `user_signed_in?'
如果我试图在before_action
使用etag
没有定义:
before_action do
etag { current_user.try(:id) } if user_signed_in? # undefined method `etag'
end
我也曾尝试:
before_action do
self.etag { current_user.id } if user_signed_in?
end
似乎这不添加额外的etagger
。
为什么不是像etag {current_user.id}如果current_user – user3334690 2014-10-02 13:05:06
@ user3334690'未定义的局部变量或方法'current_user'' – max 2014-10-02 13:06:36
if defined?(current_user)也许?或者可能除非self.try(:current_user).nil? ...我们不使用设计,所以我不确定范围current_user被定义为... – user3334690 2014-10-02 13:13:13