假设我缓存了一个Eloquent列表查询,如下所示:
Article::with('comments')->remember(5, 'article_comments')->get();
当我更新/删除该模型时,显然我必须Cache::forget('article_comments')
生成/更新新列表。
现在,在我的应用程序设计中,这些更新/删除只发生在一个用户身上,所以我希望Cache::forget('article_comments')
只会忘记当前用户的查询列表,而不是整个网络中的所有用户。
所以,我的问题是,Cache::forget()
会删除所有用户的整个缓存,还是只删除当前用户计算机中的缓存?
答案 0 :(得分:1)
它将为每个人删除它。如果要为特定用户缓存某些内容,则该密钥对于该用户而言必须是唯一的。通常,这可以通过命名article_comments_1
之类的密钥来完成,其中1
是用户ID。