Я пытаюсь назначить роль пользователю, когда он пытается. Но это дает мне эту ошибку. Я использую updateOrCreate()
, потому что я хочу использовать этот метод позже, чтобы изменить роль пользователя
SQLSTATE [42S22]: столбец не найден: 1054 Неизвестный столбец '0' в 'где
предложение '(SQL: выберите * из roles
, где (0
= user_id и 1
= =
и 2
= 10) предел 1)
Schema::create('roles', function (Blueprint $table) {
$table->increments('id');
$table->unsignedInteger("user_id")->index();
$table->string("role_name");
$table->foreign("user_id")->references("id")->on("users")->onDelete("cascade");
});
RegisterController
protected function create(array $data)
{
$user = user::create([
'name' => $data['name'],
'email' => $data['email'],
"username" => $data["username"],
'password' => Hash::make($data['password']),
]);
if ($user) {
$model = new Role();
$model->assignNewbieRole($user->id);
}
return $user;
}
Ролевая модель
public function assignNewbieRole($id)
{
$this->updateOrCreate(["user_id","=",$id],["role_name","=","newbie"]);
}
Как мне это исправить?