A User has one (or zero) Company, and a Company belongs to one and only one User. I try to save a company for a user but it adds a new entry in database every time I re-trigger the save method. It's a one to one relation, so I though save method on User.
So Company has one method user():
public function user() {return $this->belongsTo(User::class, 'user_id');}And User has one method company():
public function company() {return $this->hasOne(Company::class, 'user_id');}I'm trying to save (so create or update) a user's company like this (in a Controller):
$company = new Company();$company->name = 'Test';User::findOrFail(1)->company()->save($company);
First time I run this code it creates the entry in database (OK), but second time it adds a new entry for the same user (Not OK). I thought it will only update the database entry.
Is it a glitch (or something I don't understand in one to one relation) in Laravel or am I doing something wrong? (I think and hope it's the second purpose)
 
                        




