誰か、主な違いは何なのか教えてくれませんか?属するそしてハスワン関係雄弁な。
ベストアンサー1
主な違いは、関係のどちら側が関係の外部キーを保持するかです。 を呼び出すモデルは、関係$this->belongsTo()
内の所有モデルであり、所有モデルのキーを保持します。one-to-one
many-to-one
例一対一関係:
class User extends Model {
public function car() {
// user has at maximum one car,
// so $user->car will return a single model
return $this->hasOne('Car');
}
}
class Car extends Model {
public function owner() {
// cars table has owner_id field that stores id of related user model
return $this->belongsTo('User');
}
}
例一対多関係:
class User extends Model {
public function phoneNumbers() {
// user can have multiple phone numbers,
// so $user->phoneNumbers will return a collection of models
return $this->hasMany('PhoneNumber');
}
}
class PhoneNumber extends Model {
public function owner() {
// phone_numbers table has owner_id field that stores id of related user model
return $this->belongsTo('User');
}
}