我有一个使用俄罗斯套娃缓存的视图,其中整个项目集被缓存,集合中的每个项目都在该缓存中单独缓存。
然而,集合中的每个项目都应该显示基于当前用户通过CanCan授予的权限的编辑/删除链接。因此,仅当User A看到自己的帖子时,才会看到编辑/删除链接,而不是在User B的帖子旁边看到它们。
好吧,每当User A创建帖子时,就会将其缓存,并带有适当的编辑/删除链接,因为她应该根据自己的权限可以看到它们。但是当User B查看集合时,他会获得User A的缓存帖子,以及他不应该看到的编辑/删除链接。尽管CanCan防止这些编辑/删除操作发生,但链接仍然存在。
有没有办法根据current_user.id创建个人化缓存并避免拥有大量(几乎)相同的缓存内容版本?
然而,集合中的每个项目都应该显示基于当前用户通过CanCan授予的权限的编辑/删除链接。因此,仅当User A看到自己的帖子时,才会看到编辑/删除链接,而不是在User B的帖子旁边看到它们。
好吧,每当User A创建帖子时,就会将其缓存,并带有适当的编辑/删除链接,因为她应该根据自己的权限可以看到它们。但是当User B查看集合时,他会获得User A的缓存帖子,以及他不应该看到的编辑/删除链接。尽管CanCan防止这些编辑/删除操作发生,但链接仍然存在。
有没有办法根据current_user.id创建个人化缓存并避免拥有大量(几乎)相同的缓存内容版本?