Laravel / Voyager创建事件未在用户模型中触发

时间:2018-12-10 13:28:42

标签: laravel events voyager

在Laravel / Voyager应用程序的用户模型中触发“ creating”事件时,我正在尝试插入一些逻辑,这是我的代码:

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends \TCG\Voyager\Models\User
{ 
use Notifiable;

public static function boot()
{
    parent::boot();

    // over-ride the creating event
    static::creating(function($user)
    {
      $user->created_by = auth()->user() ? auth()->user()->id : null;
    });

    // over-ride the updating event
    static::updating(function($user)
    {
      $user->updated_by = auth()->user() ? auth()->user()->id : null;
    });
}

}

但是看起来好像从未调用过'creating'事件,而调用了'boot'方法。 有人知道为什么吗? 预先感谢!

1 个答案:

答案 0 :(得分:0)

对于陷入困境的任何人:您必须告诉Voyager在BREAD设置中使用哪个模型/类,否则Voyager将始终使用\ TCG \ Voyager \ Models \ User。