---
title: "Konfigurácia — Credits for Laravel | Roundly"
description: "Každý konfiguračný kľúč a jeho predvolená hodnota — model, typy kľúčov, prečerpanie, predvolená skupina, škála, zaokrúhľovanie a meny."
url: https://roundly-consulting.com/sk/open-source/navody/credits-for-laravel/konfiguracia
language: sk
---

[Všetky balíky](https://roundly-consulting.com/sk/open-source.md)

[Credits for Laravel](https://roundly-consulting.com/sk/open-source/navody/credits-for-laravel.md)

# Konfigurácia

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

```php
<?php

declare(strict_types=1);

use RoundlyConsulting\Credits\Models\Credit;

return [

    'model' => Credit::class,

    'key_type' => env('CREDITS_KEY_TYPE', 'bigint'),

    'primary_key_type' => env('CREDITS_PRIMARY_KEY_TYPE', 'bigint'),

    'allow_overdraft' => env('CREDITS_ALLOW_OVERDRAFT', false),

    'minimum_balance' => 0,

    'default_bucket' => 'default',

    'scale' => 0,

    'rounding' => env('CREDITS_ROUNDING', 'half_away_from_zero'),

    'currencies' => [
        // 'store_credit' => 'EUR',
        // 'points' => 'PTS',
    ],

    'modifiable' => [
        //
    ],

];
```

## Všetky kľúče

| Kľúč | Predvolené | Env | Účel |
| --- | --- | --- | --- |
| `model` | Credit::class | — | Eloquent model pre záznamy knihy pohybov. Nastavte vlastnú podtriedu Credit, ak chcete upraviť správanie alebo tabuľku; trieda, ktorá nie je Credit ani jeho podtrieda, vyhodí InvalidConfigurationException. |
| `key_type` | bigint | CREDITS\_KEY\_TYPE | Typ kľúča vašich modelov s kreditmi (morph stĺpec creditable\_id): bigint, uuid alebo ulid; iná hodnota vyhodí InvalidConfigurationException. Zafixuje sa pri spustení migrácie. |
| `primary_key_type` | bigint | CREDITS\_PRIMARY\_KEY\_TYPE | Vlastné id tabuľky credits: bigint, uuid alebo ulid; iná hodnota vyhodí InvalidConfigurationException. Zafixuje sa pri spustení migrácie. |
| `allow_overdraft` | false | CREDITS\_ALLOW\_OVERDRAFT | Pri false odpis, ktorý by skupinu dostal pod minimum\_balance, vyhodí InsufficientCreditsException. True globálne povolí odpisy pod minimum\_balance. Hodnota z env sa číta ako boolean: 1, true, on a yes ho zapnú; 0, false, off a no ho nechajú vypnuté; čokoľvek iné vyhodí InvalidConfigurationException s názvom kľúča. |
| `minimum_balance` | 0 | — | Spodná hranica, ktorá platí, keď prečerpanie nie je povolené. Celé číslo (int) alebo kanonický celočíselný reťazec („50“, „-100“); prázdna hodnota ('') sa považuje za nenastavenú, takže platí 0; čokoľvek iné („fifty“, „50.5“) vyhodí InvalidConfigurationException namiesto toho, aby sa z toho stala 0. |
| `default_bucket` | 'default' | — | Skupina pre čítanie aj zápis, keď ju volanie neuvedie. Zostatok bez skupiny vráti len túto skupinu — nikdy nesčítava naprieč skupinami. Prázdna hodnota sa považuje za nenastavenú, takže platí 'default'; hodnota, ktorá nie je reťazec, vyhodí InvalidConfigurationException. |
| `scale` | 0 | — | Počet desatinných miest, ktoré uložené celé čísla reprezentujú. Čítajú ho len pomocníky zobrazenia; skupina v mene ho ignoruje. Celé číslo od 0 do 36 (alebo jeho kanonický reťazec); čokoľvek iné vyhodí InvalidConfigurationException. |
| `rounding` | half\_away\_from\_zero | CREDITS\_ROUNDING | Predvolený režim zaokrúhľovania pri zobrazení — prípad \\RoundingMode v snake\_case. Nenastavená hodnota (chýbajúca, null alebo prázdne CREDITS\_ROUNDING=) znamená half\_away\_from\_zero; neznáma hodnota vyhodí pri prvom použití InvalidMoneyConfiguration. |
| `currencies` | \[\] | — | Názov skupiny → kód meny z money (ISO alebo vlastná). Vyhodnotí sa lenivo, pri prvom použití. |
| `modifiable` | \[\] | — | Closures pre credits:modify. Každá dostane callback $modify, ktorým zmenu aplikuje na entitu Creditable. Hodnota, ktorá nie je pole, alebo položka, ktorú nemožno zavolať, vyhodí InvalidConfigurationException. |

## Prostredie (env)

Kľúče, ktoré sa líšia podľa nasadenia, sa dajú nastaviť cez env:

```bash
CREDITS_KEY_TYPE=bigint
CREDITS_PRIMARY_KEY_TYPE=bigint
CREDITS_ALLOW_OVERDRAFT=false
CREDITS_ROUNDING=half_away_from_zero
```

## Čo rozhodnúť hneď na začiatku

- key\_type a primary\_key\_type sa čítajú pri spustení migrácie — zvoľte ich pred publikovaním a migráciou. Neskoršia zmena je dátová migrácia, nie zmena konfigurácie.
- Nerozpoznaný typ kľúča vyhodí InvalidConfigurationException s názvom kľúča — nikdy sa nenahradí hodnotou bigint.
- Prísne sa čítajú aj všetky ostatné nastavenia: nenastavený kľúč — chýbajúci, null alebo prázdny (KEY= v .env) — použije predvolenú hodnotu a prítomná hodnota zlého tvaru — fifty ako spodná hranica, pole ako skupina, reťazec namiesto zoznamu closures — vyhodí InvalidConfigurationException s názvom kľúča. Preklep sa nikdy neprevedie na 0 ani nenahradí predvolenou hodnotou.
- credits.currencies sa vyhodnocuje lenivo pri každom použití, nikdy pri štarte, takže vlastná mena zaregistrovaná v boot() vášho providera bude prijatá.
- credits.rounding musí pomenovať prípad \\RoundingMode v snake\_case; staré celočíselné PHP\_ROUND\_\* sa odmietnu.
- CREDITS\_ALLOW\_OVERDRAFT sa číta ako boolean — off, no aj false prečerpanie naozaj nechajú vypnuté a php artisan about ukáže presne to, čo ochrana uplatňuje.

## 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](https://roundly-consulting.com/sk/podporte-nas.md)

Odoslaním daru súhlasíte s našimi [podmienkami prijímania darov](https://roundly-consulting.com/sk/podmienky-darov.md).

[Podporte našu open-source prácu (otvorí sa v novej karte)](https://donate.stripe.com/dRmeVe8FX5PF1Qd9pXcEw00) [Pridajte sa k nám na Patreone (otvorí sa v novej karte)](https://www.patreon.com/cw/roundly)

## 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.

[Ponuka do 48 hodín](https://roundly-consulting.com/sk/kontakt.md) [Prezrieť všetky balíky](https://roundly-consulting.com/sk/open-source/navody/credits-for-laravel.md)
