我目前正在delete
为我的角色开发一个功能。
每次我尝试删除时:
Class name must be a valid object or a string
我该如何解决?
将此函数添加到 Role.php 模型中
<?php
namespace App;
use Illuminate\Support\Facades\Config;
public function users()
{
return $this->belongsToMany(
Config::get('auth.providers.users.model'),
Config::get('entrust.role_user_table'),
Config::get('entrust.role_foreign_key'),
Config::get('entrust.user_foreign_key'));
}
}
希望这可以帮助!
@Tiến Đạo 说解决这个问题的最佳方法。但是如果你想要代码简单......
use App\User;
class Role extends EntrustRole
{
/**
* Many-to-Many relations with the user model.
*
* @return \Illuminate\Database\Eloquent\Relations\BelongsToMany
*/
public function users()
{
return $this->belongsToMany(User::class);
}
}
用 ,更新config/auth.php
文件'model' => App\Users::class
,因为vendor/zizaco/entrust/src/Entrust/Traits/EntrustRoleTrait.php
指向Config::get('auth.model')
$this->belongsToMany() 方法。