问题标签 [russian-doll-caching]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 为什么这个缓存语句没有写出我期望的键?
我的_profile.html.erb
部分有这个:
然而,这是我在服务器日志中看到的:
我在那里什么roles
也没看到。
发生的情况是,如果我以具有admin
角色的用户身份登录,然后以具有另一个角色的用户身份登录,我会看到缓存profiles
显示为好像我是管理员而不是具有正确视图的其他用户。
可能是什么原因造成的,我该如何解决?
编辑 1
如果我将cache
声明更改为:
刷新一下,这就是日志的样子:
编辑 2
当我binding.pry
进入时_profile.html.erb
,我得到以下信息:
我什至尝试了以下方法:
当以非管理员用户身份登录时,它仍然给我与管理员用户相同的缓存结果。
编辑 3
这是cache
调用调用集合的块_profile.html.erb
:
ruby-on-rails - 尽管条件为真,cache_unless 仍然计算缓存键
我有一个简单的片段缓存:
当我登录时,该页面没有被缓存,这是我想要的,但是,缓存键仍在计算中,我可以在我的日志中看到 ActiveRecord 查询。
如果条件为真,我期望缓存不会计算新的缓存键。
ruby-on-rails - Rails:部分缓存嵌套表单
我有一个复杂的嵌套表单,当它没有被缓存时,它需要几秒钟才能加载。隐藏的 id 字段如下所示:
现在我想缓存表单的一部分,只更改更新的部分。问题是fields_for
它无法识别缓存的部分并从 0 开始计数器:
所以第二个 [0][id] 字段会覆盖第一个字段。
有没有办法使用随机字符串而不是像这样的连续整数?
然后缓存的字段可以保持不变而不受任何干扰。感谢您提供解决此问题的任何想法!
php - 当前黑客信息
这只是为了让每个人都知道我今天早上在我的 apache 的 access.log 中遇到了什么,我是否应该担心它。我发现了什么是 GET /index.php?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=md5&vars[1][]=HelloThinkPHP21 然后我用谷歌搜索 Thinkphp 并找到了这篇关于它的有趣文章。“ThinkPHP 是一个基于 PHP 的 Web 应用程序开发框架,在 Apache2 开源许可下分发。它专注于企业项目的快速开发,在运行 ThinkPHP 的服务器超过 40,000 台的中国非常流行。“我应该担心吗如果是这样,除了清除我的fail2ban日志之外,他们对我的网站做了什么吗?