Php 使用外键创建实体

Php 使用外键创建实体,php,laravel,Php,Laravel,我目前正在学习Laravel,我想创建一个新的带有外键的实体(基本上是链接到地址的用户),目前我正在做: $newAddress = App\Address::create([]); return App\User::create([ 'username' => $data['username'], 'mail' => $data['mail'], 'password' => bcrypt($data['password']), 'addres

我目前正在学习Laravel,我想创建一个新的带有外键的
实体
(基本上是链接到
地址的
用户
),目前我正在做:

$newAddress = App\Address::create([]);

return App\User::create([
    'username' => $data['username'],
    'mail' => $data['mail'],
    'password' => bcrypt($data['password']),
    'address_id' => $newAddress->getAttributes()['id']
]);

但我很确定有更好的解决方案,我就是不知道怎么解决。我使用的是Artisan控制台生成的默认AuthController。

如果设置了关系,可以使用这些设置将地址与用户关联

$address = App\Address::create();
$user = new App\User([
    'username' => $data['username'],
    'mail' => $data['mail'],
    'password' => bcrypt($data['password']),
]);

$user->address()->associate($address);
$user->save();