【发布时间】:2012-12-21 21:30:57
【问题描述】:
我有一个使用 CakeSession 来保存不同用户数据的应用。现在我想使用CakeSession::write() 编写一些默认值,并让它们可用于所有视图(也可用于缓存视图)。因此,应该在呈现视图之前对每个请求进行检查/写入。
但是在哪里放置符合这些要求的代码呢?到目前为止,我尝试了以下位置使用CakeSession::write(),但没有成功:
- Config/bootstrap.php -> CakeSession 尚未定义
- AppController::__construct() -> CakeSession 尚未定义
- AppController::beforeFilter() -> 不会为缓存视图调用
【问题讨论】:
-
您可以将
'callbacks'=>true作为cacheAction的参数传递,从而触发beforeFilter。 -
@Ross 感谢您提供此信息。我认为这是一个可能的解决方案。您能谈谈触发回调时缓存文件的性能吗?
-
您必须自己进行基准测试,涉及的因素太多。这听起来有点像过早的优化 - 请注意,但要等到它成为问题后再过分担心。
-
我只是问,因为我期望对性能产生更大的影响。但一切都像一个魅力。谢谢!
标签: cakephp cakephp-2.2