如何使用CakePHP将数据库扩展到数据库?

时间:2011-08-09 18:42:31

标签: database cakephp logging

需要登录数据库表(logs)我的应用程序中发生的所有主要操作。例如,这些操作将是login/logout, view, add, update,等等。因此,每次有人登录或者说,查看特定记录时,都会记录在数据库表中。

我想以尽可能简单的方式从所有控制器调用该方法 - 类似于logIt($action, $object, $note) - 因为这将在每个控制器中的地方点缀。它也应该合理有效。

你有什么建议吗?这样做的最佳方式是什么?

谢谢你们。来自CakePHP新手。

2 个答案:

答案 0 :(得分:3)

您可以在蛋糕(模型,视图,控制器)中的任何位置使用$this->log($data,'log_file');。数据将记录到tmp / logs / log_file.log

如果需要进入DB,则需要在app_controller中设置日志方法,自己加载模型。并在您需要的任何控制器中调用该日志。

答案 1 :(得分:0)

就我个人而言,我认为Anh Phams的答案更具“蛋糕”和可扩展性,但如果您需要实时更新该列表,那么您将不得不将其放入数据库中。

除此之外,最好的方法是custom component某种类型,您可以根据需要附加到控制器上。当然,您总是可以在AppController中创建一个简单的方法,它可以加载“日志”模型并在您调用时保存记录。