将活动记录到数据库yii框架

I'm using yii framework and I want to make an activity logging for every action that user do in my web. All of their activity will be saved to a table in database.

The things that will be recorded are:

  • user ID
  • table name (inserted, deleted, edited item)
  • time_action
  • activity (what did they do. ex: created project_name)

Please help. Thanks in advance.

I'm not sure what you are trying to do but is it like when a user deletes some item; then entry should be logged in database for that user? If yes, then you can create a common class and a static method in it like,

yourCommonClass::setActivityLog(user_id,activity_msg,time);

and put this code in every action that you have written. ex. actionUpdate, actionDelete.

  • you can get the user_id from Yii::app()->user->id
  • put you custom activity message like "User #user_id created new item" etc.
  • time you can get it while saving into database.

By the way, create a table and model for the same like ActivityLog. ;) This is what I did in my project.