NovinkaZverejnili sme 50+ Laravel balíkov ako open source
Custom AI apps, agents and automation — Roundly ConsultingRoundly
Všetky balíky
Reports for Laravel

Ochrana pred duplicitami

Pri zapnutom prevent_duplicates (predvolene) nemôže nahlasovateľ — ani identifikátor hosťa — podať na ten istý subjekt druhé hlásenie. Pokus vyhodí DuplicateReportException s existujúcim hlásením. Hlásenia na jeden subjekt sa spracúvajú postupne, takže dvojité odoslanie neprekĺzne:

use RoundlyConsulting\Reports\Exceptions\DuplicateReportException;

try {
    Reports::report($post)->by($user)->for(Reason::Spam)->create();
} catch (DuplicateReportException $e) {
    $e->existing; // the Report already on file
}

Rozsah

duplicate_scopeNové hlásenie sa zablokuje, keď…
openten istý nahlasovateľ už má na subjekte hlásenie v stave Pending alebo InReview. Po jeho vybavení môže nahlásiť znova. (Predvolené.)
anyexistuje akékoľvek skoršie hlásenie od toho istého nahlasovateľa — vybavené aj nevybavené.

Vyhľadávanie ide cez predvolený dotaz modelu, takže soft-deleted hlásenia nové hlásenie nikdy nezablokujú.

Čo sa porovnáva

  • Prihlásený nahlasovateľ sa porovnáva podľa typu a id nahlasovateľa.
  • Hosť sa porovnáva podľa guest_identifier medzi hláseniami bez nahlasovateľa.
  • Úplne anonymné hlásenie — bez nahlasovateľa aj identifikátora — nemá s čím porovnať, a preto sa nikdy nededuplikuje.

Kontrolu úplne vypnete nastavením prevent_duplicates na false.

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 kryptomien

Odoslaní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.