如何在创建时访问用户ID?

时间:2017-03-05 17:33:19

标签: laravel-5 orm relational-database

请注意,我希望在用户注册后立即在我的levelone表中获取注册用户的ID。

我想在IDE的第61行使用它,还是可以自动完成一对一的关系?

RegisterController

upper part of the code

它在代码的底部返回,但是带有用户变量。

这是我的LevelOneModel的截图:

LevelOneModel Screenshot

感谢。你一直很有帮助

1 个答案:

答案 0 :(得分:1)

如果我理解你的问题,你可以这样做:

$levelone = new LevelOneModel();

$levelone->user()->associate(User::create([
    'first_name' => $data['first_name'],
    'last_name'  => $data['last_name'],
    'email'      => $data['email'],
    'password'   => bcrypt($data['password']),
]));

$levelone->save();

return $levelone->user;

希望这有帮助!

为了它,虽然我只是建议做:

protected function create(array $data)
{
    $user = User::create([
        'first_name' => $data['first_name'],
        'last_name'  => $data['last_name'],
        'email'      => $data['email'],
        'password'   => bcrypt($data['password']),
    ]);

    $levelone = new LevelOneModel();

    $levelone->user()->associate($user);

    $levelone->save();

    return $user;
}