Какие связи-то?
Допустим юзер-роль - это many-to-many
class User {
public function roles(): BelongsToMany {
return $this->belongsToMany(Role::class);
}
}
class Role {
public function users(): BelongsToMany {
return $this->belongsToMany(User::class);
}
}
Набор ролей, как правило фиксированный, или заполняется в админке.
И роль юзеру просто назначается.
$user = User::create([...]);
$user->roles()->attach(Role::whereSlug('user')->firstOrFail());
Не знаю, какое у вас отношение между профилем и пользователем.
Но примерно так
$user->profiles()->create([
]);