我有一个雄辩的多对多的关系,我想使用attach()来轻松创建role_permissions数据,但问题是我使用UUID为我的ID和它引发错误字段'id'没有默认值。任何劫持attach()方法的方法?所以我可以设置我的UUID?Laravel雄辩的附加自动生成随机ID
我的迁移
Schema::create('role_permissions', function (Blueprint $table) {
$table->increments('count')->unique();
$table->string('id')->unique();
$table->string('role_id');
$table->string('permission_id');
$table->timestamps();
});
我的模型
class Role extends Model
{
//
public $incrementing = false;
public function users()
{
return $this->belongsToMany('App\User', 'user_roles', 'role_id', 'user_id');
}
public function permissions()
{
return $this->belongsToMany('App\Permission', 'role_permissions', 'role_id', 'permission_id');
}
}
我的代码附加
$role->permissions()->attach($permission_ids);
我知道这里的问题是,我的ID是不是一个递增的数字它是一个唯一的字符串。我的问题是如何“注入”该唯一字符串attach()方法?感谢你们。
如果您已经正确设置了您的模型和数据库,这应该不成问题,您可以发布数据库和模型代码吗? –
你可以发布你的代码吗? – Paras
基本上没有模型,因为我使用的是多对多的关系。所以附件只会创建一个查询并执行它。 –