У меня есть следующие функции в моей модели User:
public function getInterests()
{
return $this->hasMany('App\Interest')->get();
}
public function getGifts()
{
return DB::table('gifts')
->join('sent_gifts', function ($join) {
$join->on('gifts.id', '=', 'sent_gifts.gift_id')
->where('user_2', $this->id);
})
->join('users', function ($join) {
$join->on('users.id', '=', 'sent_gifts.user_1');
})
->get();
}
Я не мог понять, как создавать сложные Eloquent Relationships, но я хотел бы использовать все преимущества Eloquent ORM, такие какаксессоры и карбоновые экземпляры по датам.
Как мне преобразовать мою getGifts()
функцию в красноречивую связь?
PS: у меня уже есть приложение \ пользователь , приложение \ подарок и App \ SentGift модели созданы.