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

Konfigurácia

Balík má rozumné predvolené hodnoty a funguje bez akejkoľvek konfigurácie. Publikovaný config/coupons.php v plnom znení:

use RoundlyConsulting\Coupons\Models\Coupon;

return [
    'model' => Coupon::class,

    // Key type of the polymorphic redeemer column: "bigint", "uuid" or "ulid".
    'key_type' => env('COUPONS_KEY_TYPE', 'bigint'),

    'default_currency' => env('COUPONS_CURRENCY', 'USD'),

    'redeemer' => [
        'track' => env('COUPONS_TRACK_REDEEMERS', true),
    ],

    'code' => [
        'length' => env('COUPONS_CODE_LENGTH', 6),
        'charset' => env('COUPONS_CODE_CHARSET', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'),
    ],

    'route_key' => env('COUPONS_ROUTE_KEY', 'code'),
];

Všetky kľúče

KľúčTypPredvolenéEnvÚčel
modelclass-stringCoupon::class—Model kupónu. Nastavte ho na podtriedu balíkového Coupon; čokoľvek iné vyhodí InvalidConfigurationException s názvom kľúča. Používa ho manažér, akcie, pravidlo aj oba príkazy.
key_typestringbigintCOUPONS_KEY_TYPETyp kľúča polymorfného stĺpca redeemer v coupon_redemptions: bigint, uuid alebo ulid. Číta ho migrácia — nastavte ho pred migrovaním. Čokoľvek iné vyhodí InvalidConfigurationException s názvom kľúča.
default_currencystringUSDCOUPONS_CURRENCYKód ISO 4217, na ktorý dodávaná CouponFactory uzamkne pevné kupóny a kupóny so stropom, ak stav menu neuvedie; zobrazuje ho aj about. Uplatnenie menu nikdy nepredpokladá — vždy použije menu sumy košíka. Prázdna hodnota (COUPONS_CURRENCY=) sa považuje za nenastavenú, takže platí USD; hodnota, ktorá nie je reťazcom, vyhodí InvalidCouponConfiguration s názvom kľúča.
redeemer.trackbooltrueCOUPONS_TRACK_REDEEMERSZapisovať riadok coupon_redemptions pri každom uplatnení so zákazníkom — základ limitov na zákazníka, usageBy() a hasRedeemed(). Fungujú aj hodnoty v štýle env: 1/true/on/yes a 0/false/off/no; prázdna hodnota sa považuje za nenastavenú, takže sledovanie zostáva zapnuté; čokoľvek iné vyhodí InvalidConfigurationException s názvom kľúča.
code.lengthint6COUPONS_CODE_LENGTHDĺžka automaticky generovaných kódov, 4–64. Funguje aj celočíselný reťazec ako „8“; prázdna hodnota sa považuje za nenastavenú, takže platí 6; „eight“ alebo „8.5“ vyhodí výnimku.
code.charsetstringA–Z 0–9COUPONS_CODE_CHARSETAbeceda generovaných kódov: aspoň 2 rôzne symboly (bez ohľadu na veľkosť písmen), žiadne medzery ani riadiace znaky. Prevedie sa na veľké písmená ako každý kód; viacbajtové symboly sú v poriadku. Prázdna hodnota sa považuje za nenastavenú, takže platí A–Z 0–9.
route_keystringcodeCOUPONS_ROUTE_KEYStĺpec pre route-model binding parametra {coupon}. Nastavte id, ak chcete väzbu cez primárny kľúč. Prázdna hodnota sa považuje za nenastavenú, takže platí code; hodnota, ktorá nie je reťazcom, vyhodí InvalidCouponConfiguration s názvom kľúča, namiesto väzby cez code.

Prostredie (env)

Každý kľúč okrem model sa dá nastaviť cez env, takže konfiguráciu publikujete len zriedka:

COUPONS_KEY_TYPE=bigint
COUPONS_CURRENCY=EUR
COUPONS_TRACK_REDEEMERS=true
COUPONS_CODE_LENGTH=8
COUPONS_CODE_CHARSET=ABCDEFGHJKLMNPQRSTUVWXYZ23456789
COUPONS_ROUTE_KEY=code

COUPONS_TRACK_REDEEMERS prijíma hodnoty v štýle env: 1, true, on alebo yes sledovanie ponechajú zapnuté, 0, false, off alebo no ho vypnú; prázdna hodnota (COUPONS_TRACK_REDEEMERS=) sa považuje za nenastavenú, takže sledovanie zostáva zapnuté. Čokoľvek iné vyhodí InvalidConfigurationException s názvom kľúča.

Kľúč, ktorý odstránite, nastavíte na null alebo necháte prázdny (COUPONS_CURRENCY=), sa považuje za nenastavený a dostane predvolenú hodnotu; kľúč s hodnotou nesprávneho tvaru vyhodí výnimku, namiesto návratu k predvolenej hodnote, a php artisan about zobrazí chybný route_key, default_currency či hodnotu code.* ako INVALID aj s dôvodom. Nepoužiteľné code.length alebo code.charset vyhodí InvalidCouponConfiguration v momente generovania kódu — pozrite si Generované kódy; route_key či default_currency, ktorý nie je reťazcom, ju vyhodí pri čítaní. key_type sa číta len pri spustení migrácie.

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.