Čo sa aktérovi páčilo
Obráťte reláciu a vypíšte, čo sa aktérovi páči:
$user->likedItems(Post::class)->get(); // posts the user actively likes
$user->likedItems(Post::class, 'love')->get(); // filtered by reaction
$user->likedItems(Post::class)->with('author')->paginate(); // real relation — eager-load & paginate
$user->likesOf(Post::class); // the underlying MorphToMany relationlikedItems() vracia skutočnú Eloquent reláciu, takže podmienky, eager loading aj stránkovanie fungujú ako zvyčajne. Položky s odobratým páčikom automaticky vypadnú a po opätovnom páčiku sa vrátia.
Reakcia na pivote
Relácia nesie typ reakcie na svojom pivote:
foreach ($user->likedItems(Post::class)->get() as $post) {
$post->pivot->type; // the actor's earliest active reaction on it (or the filtered type)
}Každá položka sa vráti raz bez ohľadu na to, koľko reakcií na nej aktér zanechal, a paginate()->total() počíta položky, nie reakcie. type v pivote je najstaršia aktívna reakcia aktéra na položke, alebo požadovaný typ, ak podľa neho filtrujete.
Pre opačný zoznam — položky, ktoré sa aktérovi nepáčili — použite scope whereNotLikedBy() na cieľovom modeli.
Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.