双引导功能导致特质勾结



laravel调试器正在向我显示此错误:

特征方法启动尚未应用,因为App user

上有其他特征方法发生冲突

如果我删除了其中一个特征,则不会显示错误。但是我都需要他们。那我该如何解决?'

我正在使用Laravel 5.8

预先感谢!

namespace App;
use ZizacoEntrustTraitsEntrustUserTrait;
use IlluminateFoundationAuthUser as Authenticatable;
class User extends Authenticatable
{
    use Uuids;
    use EntrustUserTrait;
}

特质uuid

   <?php
namespace App;
use WebpatserUuidUuid;
trait Uuids
{
    /**
     * Boot function from laravel.
     */
    protected static function boot()
    {
        parent::boot();
        static::creating(function ($model) {
            $model->{$model->getKeyName()} = Uuid::generate(5,'test', Uuid::NS_DNS);
        });
    }
}

我认为必须对启动功能做些事情

<?php
namespace App;
use WebpatserUuidUuid;
trait Uuids
{
    /**
     * Boot function from laravel.
     */
    protected static function bootUuids()
    {
        static::creating(function ($model) {
            $model->{$model->getKeyName()} = (string) Uuid::generate(4);
        });
    }
}

参考:SQLSTATE [42S01]:基本表或视图已经存在或基本表或视图已经存在:1050 Table

相关内容

  • 没有找到相关文章

最新更新