使用 Rails 3.2。假设我要上传 10 张新照片,我需要将我的照片current_user.id
与每条新记录相关联。由于某些原因,它photos_controller.rb
是空白的,因为它与另一个模型嵌套在一起Shop
。这是我的代码:
class Photo < ActiveRecord::Base
belongs_to :attachable, :polymorphic => true, :counter_cache => true
belongs_to :user, :counter_cache => true
before_create :current_user_id
before_create :associate_current_user
def current_user_id
@current_user_id ||= UserSession.find.user.id
end
private
def associate_current_user
self.user_id = @current_user_id
end
end
很明显,如果要创建 10 条新记录,我希望模型找到current_user
一次,然后从缓存中取出(一种记忆技术),但是因为我使用before_create
的current_user
是 ,所以查询 10 次而不是获取它来自缓存。
我该怎么做才能缓存@current_user_id
?
谢谢。