JSON resource
ReviewResource (a ReviewCollection) poskytujú rozumný verejný tvar pre API a mobilných klientov:
use RoundlyConsulting\Reviews\Http\Resources\ReviewResource;
return ReviewResource::collection($product->approvedReviews()->with('responses')->get());| Pole | Hodnota |
|---|---|
id / parent_id | Kľúč recenzie; kľúč rodiča pri odpovediach vlastníka. |
rating / status / verified | Hodnotenie (alebo null), stav ako reťazec, príznak overenia. |
title / content | Text recenzie. |
helpful_count / unhelpful_count / helpful_score | Počty hlasov a ich rozdiel. |
author / reviewable | Každé ako dvojica { type, id }. |
responses | Vnorené položky ReviewResource — len ak je vzťah načítaný. |
photos | Zoznam { id, url, srcset }, pri súkromných fotografiách podpísaný. |
created_at / updated_at / approved_at | Reťazce vo formáte ISO 8601. |
meta sa zámerne nezverejňuje, interné poznámky a dôvody zamietnutia teda ostanú súkromné. URL fotografií sa riadia ich viditeľnosťou — pri súkromných sú podpísané, nikdy verejné.
Stránkované kolekcie
use RoundlyConsulting\Reviews\Http\Resources\ReviewCollection;
return new ReviewCollection(
$product->approvedReviews()->latestFirst()->paginate(10),
);Úpravy
Publikujte upraviteľné kópie — App\Http\Resources\Reviews\ReviewResource a ReviewCollection v app/Http/Resources/Reviews, triedy vo vašom namespace, ktoré vlastníte a ktoré na začiatku vykresľujú presne to isté ako resource balíka:
# Translations → lang/vendor/reviews
php artisan vendor:publish --tag="reviews-translations"
# JSON resources → app/Http/Resources/Reviews
php artisan vendor:publish --tag="reviews-resources"Upravte ich a v controlleroch používajte ich namiesto tried balíka:
use App\Http\Resources\Reviews\ReviewResource;
return ReviewResource::collection($product->approvedReviews()->with('responses')->get());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.