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

Pridajte balík. Service provider sa zaregistruje automaticky a spolu s ním sa nainštalujú aj jeho dve závislosti od Roundly — package-toolkit-for-laravel a money-for-laravel:

composer require roundly-consulting/credits-for-laravel

php artisan vendor:publish --tag="credits-migrations"
php artisan migrate

Migrácie len cez publikovanie

Balík svoje migrácie sám nenačítava. Publikovanie ich skopíruje do vášho database/migrations, kde ich vlastníte vy — samotné php artisan migrate pred publikovaním preto nevytvorí nič. Súbory dostanú aktuálnu časovú pečiatku, takže sa spustia po vašich tabuľkách; opätovné publikovanie prepíše tie isté súbory.

Migrácia credits vytvorí dve tabuľky: credits, samotnú knihu pohybov, a credit_locks, jeden malý riadok na vlastníka, ktorý zoraďuje súbežné zmeny (pozrite Ochrana pred prečerpaním). create_credit_holds_table pridá credit_holds (pozrite Rezervácie) a create_credit_resets_table pridá credit_resets (pozrite Pravidelné obnovenie).

Ak vaše modely s kreditmi používajú kľúče UUID alebo ULID, nastavte CREDITS_KEY_TYPE ešte pred migráciou — pozrite si Typy kľúčov a schéma.

Migrácia len dopredu

Ako každá migrácia balíkov od Roundly nemá down(): php artisan migrate:rollback tabuľky nezmaže a nasledujúce migrate potom zlyhá na „table already exists“. Publikované kópie patria vám — pri odinštalovaní zmažte credits, credit_locks, credit_holds a credit_resets vo vlastnej migrácii alebo do svojich kópií doplňte down().

Prechod z verzie 2.0

Verzia 2.1 pridáva rezervácie a pravidelné obnovenie, každé s vlastnou tabuľkou. Migrácie publikujte znova — existujúca kópia sa použije ďalej a pribudnú len nové súbory — a spustite migrate:

php artisan vendor:publish --tag="credits-migrations"   # adds create_credit_holds_table + create_credit_resets_table
php artisan migrate

Nič iné sa nemení. Rezervácie zostanú vypnuté, kým nenastavíte credits.holds.enabled, takže aktualizácia bez spustenej migrácie funguje ďalej; obnovenie nepotrebuje žiadny prepínač, len tabuľku credit_resets. Ďalšia hlavná verzia má rezervácie zapnúť predvolene.

Konfigurácia a preklady

Konfiguračný súbor je voliteľný — balík funguje bez akejkoľvek konfigurácie. Publikujte ho, len ak chcete zmeniť predvolenú hodnotu:

php artisan vendor:publish --tag="credits-config"

Texty výnimiek sa dajú preložiť a balík ich obsahuje v angličtine aj slovenčine. Publikujte ich do lang/vendor/credits, ak ich chcete upraviť alebo pridať ďalšie jazyky:

php artisan vendor:publish --tag="credits-translations"

Balík vystavuje presne tri publish tagy: credits-migrations, credits-config a credits-translations.

Ďalšie kroky

  • Pridajte modelu rozhranie Creditable a trait HasCredits.
  • Pripisujte a odpisujte kredity cez modifyCredits().
  • Rozdeľte kredity do pomenovaných skupín, ak sa rôzne druhy nesmú navzájom miešať.

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.