検索

ホームページ  >  に質問  >  本文

php - Laravel Log模块设计

写一个laravel项目,需求是将CURD的记录写入mysql的log表中,
我现在的方案就是CURD结束后自己写的LOG repository 记录一下 ,如下,

$result = $this->customer->add($request->all());
if($result>0){
    $this->log->write('新增客户'.$request->input('name'));
}

觉得很不优雅,大家有什么好的思路吗

大家讲道理大家讲道理2873日前684

全員に返信(1)返信します

  • PHP中文网

    PHP中文网2017-04-10 17:08:33

    用laravel 的事件机制记录日志
    http://www.golaravel.com/laravel/docs/5.0/events/

    注册“新增客户”事件

    'App\Events\AddUser'

    注册“日志记录”事件监听者

    'App\Listeners\LogRecord'

    订阅事件

    在 EventServiceProvider 中

    protected $listen = [

    'App\Events\AddUser' => [
        'App\Listeners\LogRecord',
    ],

    ];

    触发事件

    $result = $this->customer->add($request->all());
    event(new AddUser($result ));

    返事
    0
  • キャンセル返事