我为我的表创建了一个行为,它在beforeSave()方法中设置了表的两个基本变量:created_by和created_on(修改和删除相同)。
我目前在我的控制器中使用active_user,从AppController的beforeFilter()方法设置它。如何从控制器向行为发送active_user->用户名?有可能吗?或者将字符串发送到行为的替代方法?
答案 0 :(得分:1)
请记住,蛋糕具有保存created
和modified
日期的内置行为。您只需在表格中启用它即可。 (参见手册here)
$this->addBehavior('Timestamp');
为了保存用户,我使用了一个在控制器中设置全局变量的插件(你可以在AppController中完成)
$authUser = $controller->Auth->user();
Configure::write('GlobalAuth', $authUser);
和行为
$user_id = Configure::read('GlobalAuth.id');
但我真的不知道这是不是最好的方法。
我使用的插件就是这个,供您参考
答案 1 :(得分:1)
您还可以使用muffin/footprint插件并自定义要保存在beforeSave中的数据。