Laravel Ban to pakiet, który upraszcza blokowanie i banowanie modeli Eloquent. Korzystając z tego pakietu, możesz uczynić model "bannable" w ciągu kilku minut.
Przypadek użycia tego pakietu wykracza poza User
model; możesz dodać koncepcję bana do dowolnego modelu Eloquent. Główne cechy tego pakietu to:
- Model może mieć wiele zakazów.
- Usunięte zakazy zachowane w historii jako miękkie usunięte rekordy.
- Większość części logiki jest obsługiwana przez BanService.
- Posiada oprogramowanie pośredniczące, aby zapobiec dostępowi do trasy zablokowanego użytkownika.
- Przypadek użycia nie ogranicza się do modelu użytkownika, każdy model Eloquent może zostać zbanowany.
- Wydarzenia strzelające na modelach ban i unban.
- Zaprojektowany do pracy z modelami Laravel Eloquent.
- Posiada Laravel Nova support.
- Korzystanie z umów w celu zachowania wysokich możliwości dostosowywania.
- Używanie cech w celu uzyskania funkcjonalności po wyjęciu z pudełka.
Pakiet ma ładne API, które ułatwia banowanie modelu:
$user->ban();
$user->ban([
'comment' => 'Enjoy your ban!',
]);
// A ban that has a ban expiry date
$user->ban([
'expired_at' => '+1 month',
]);
// Remove a ban
$user->unban();
// Boolean checks
$user->isBanned();
$user->isNotBanned();
$ban->isTemporary();
pakiet zapewnia również miłe udogodnienia, takie jak oprogramowanie pośredniczące, zdarzenia, zakresy i automatyczne stosowanie zakresów do modelu.
Możesz dowiedzieć się więcej o tym pakiecie, uzyskać pełne instrukcje instalacji i wyświetlić kod źródłowy w witrynie GitHub.You can learn more about this package, get full installation instructions, and view the source code on GitHub.