模型定義
class User { public function customer() { return $this->hasOne('Customer'); } } class Customer { public function user() { return $this->belongsTo('User'); } }
需要注意的是 associate 方法是 BelongsTo 類才有,所以正確的調用方法如下:
$user = new User($data); $customer = new Customer($customerData); $customer->user()->associate($user); $customer->save();
與此相反的方法是 disassociate 方法:取消兩個模型之間的 belongsTo 關聯
$customer->user()->disassociate(); $customer->save()
此方法需要注意的是,disassociate 並不會刪除記錄,只是更新關聯的字段為 null
附(通過關聯的模型保存):
$user = new User($data); $user->save(); $customer = new Customer($customerData); $user->customer()->save($customer);