[英]Copying an ID when registering an user in Laravel 5.3
我想在有人注册后将id的内容复制到owner_id。
$table->increments('id');
$table->integer('owner_id');
我该怎么做呢? 我试过这个,我显然希望不会这样做:
protected function create(array $data)
{
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
...
'owner_id' => $data['id'],
]);
}
由于$ data仅为您提供表单信息。 我现在很无能为力。 有任何想法吗?
你可以这样做:
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']);
$user->owner_id = $user->id;
$user->save();
您需要先创建用户。 只有这样你才能使用它的ID:
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
$user->update(['ownder_id' => $user->id]);
首先创建用户然后通过
DB::getPdo()->lastInsertId();
更新ownder_id
DB::getPdo()->lastInsertId();
或$user->id
。
尝试这个,
protected function create(array $data)
{
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
User::where('id', $user->id)
->update(['ownder_id' => $user->id]);
return $user;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.