«Associate Laravel» переводится на английский как «ассоциации Laravel». В Laravel ассоциации используются для определения отношений между таблицами/моделями базы данных. В Laravel доступно несколько типов ассоциаций, в том числе:
-
Отношения «один к одному»:
-
Определить связь в классах модели:
// User.php public function phone() { return $this->hasOne(Phone::class); } // Phone.php public function user() { return $this->belongsTo(User::class); } -
Доступ к связанной модели:
$user = User::find(1); $phone = $user->phone;
-
-
Отношения «один ко многим»:
-
Определите отношения в классах модели:
// User.php public function posts() { return $this->hasMany(Post::class); } // Post.php public function user() { return $this->belongsTo(User::class); } -
Доступ к связанным моделям:
$user = User::find(1); $posts = $user->posts;
-
-
Отношения «многие ко многим»:
-
Определите отношения в классах модели:
// User.php public function roles() { return $this->belongsToMany(Role::class); } // Role.php public function users() { return $this->belongsToMany(User::class); } -
Доступ к связанным моделям:
$user = User::find(1); $roles = $user->roles;
-
-
Отношения «есть один»:
-
Определите отношения в классах модели:
// Country.php public function user() { return $this->hasOneThrough(User::class, City::class); } // City.php public function user() { return $this->belongsTo(User::class); } -
Доступ к связанной модели:
$country = Country::find(1); $user = $country->user;
-
Это всего лишь несколько примеров ассоциаций Laravel. Laravel предоставляет гораздо больше методов и возможностей для определения отношений и работы с ними. Изучение и понимание этих ассоциаций поможет вам создавать более сложные и взаимосвязанные приложения с помощью Laravel.