---
title: "Konfigurácia — Query Builder for Laravel | Roundly"
description: "Každý konfiguračný kľúč a jeho predvolená hodnota — názvy parametrov, limity veľkosti stránky, režimy neznámych parametrov a limity requestu."
url: https://roundly-consulting.com/sk/open-source/navody/query-builder-for-laravel/konfiguracia
language: sk
---

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

[Query Builder for Laravel](https://roundly-consulting.com/sk/open-source/navody/query-builder-for-laravel.md)

# Konfigurácia

Balík funguje bez akejkoľvek konfigurácie v hostiteľskej aplikácii. Publikovaný config/query-builder.php v plnom znení:

```php
return [
    'parameters' => [
        'filter' => 'filter',   // filter[<name>]=<value>
        'sort'   => 'sort',     // sort=-created_at,name
    ],

    'pagination' => [
        'page_name'        => 'page',
        'per_page_name'    => 'per_page',
        'default_per_page' => 20,
        'max_per_page'     => 100,
    ],

    'mode' => [
        'unknown_filter' => 'reject',
        'unknown_sort'   => 'reject',
    ],

    'limits' => [
        'max_filter_values' => 50,   // most comma/array items per filter value
        'max_value_length'  => 255,  // most characters per individual value
        'max_sorts'         => 5,    // most allow-listed sort columns applied
    ],
];
```

## Všetky kľúče

| Kľúč | Typ | Predvolené | Účel |
| --- | --- | --- | --- |
| `parameters.filter` | string | `filter` | Kľúč query stringu, ktorý nesie filtre. Reťazec; prázdna hodnota = nenastavená → filter. |
| `parameters.sort` | string | `sort` | Kľúč query stringu, ktorý nesie reťazec triedenia. Reťazec; prázdna hodnota = nenastavená → sort. |
| `pagination.page_name` | string | `page` | Parameter stránky pre paginator — automaticky sa použije pri paginate()/simplePaginate() na QueryBuilder a dá sa prečítať cez pageName() v requeste s HasPageSize. |
| `pagination.per_page_name` | string | `per_page` | Názov parametra veľkosti stránky (používa HasPageSize). |
| `pagination.default_per_page` | int | `20` | Veľkosť stránky, keď per\_page chýba alebo je neplatné. Aspoň 1 a najviac max\_per\_page — ak nie je nastavená, je to 20 alebo max\_per\_page, podľa toho, čo je menšie; výslovne nastavená nad max\_per\_page vyhodí výnimku. |
| `pagination.max_per_page` | int | `100` | Horná hranica — per\_page nad ňou vráti 422; zároveň pevný strop. Aspoň 1. |
| `mode.unknown_filter` | string | `reject` | reject (HTTP 400) alebo ignore (kľúč sa zahodí) pre filtre mimo allow-listu. |
| `mode.unknown_sort` | string | `reject` | reject (HTTP 400) alebo ignore (kľúč sa zahodí) pre triedenia mimo allow-listu. Ak ignore zahodí všetky požadované triedenia, použije sa defaultSort(). |
| `limits.max_filter_values` | int | `50` | Počet položiek (čiarka/pole) ponechaných v hodnote filtra; nadbytočné sa zahodia (ochrana pred DoS). Aspoň 1. |
| `limits.max_value_length` | int | `255` | Počet znakov ponechaných v jednej hodnote filtra; dlhšie hodnoty sa skrátia. Aspoň 1. |
| `limits.max_sorts` | int | `5` | Počet použitých stĺpcov triedenia po odstránení duplicít (ponechá sa prvý). Rátajú sa len triedenia z allow-listu, takže token zahodený v režime ignore nikdy nezaberie miesto platnému. Aspoň 1. |

## Poznámky

- parameters.\* — dodané predvolené hodnoty sú zmrazený wire kontrakt; meňte ich len spolu s frontendom.
- Každý kľúč sa číta prísne: nenastavený kľúč — chýbajúci, null alebo prázdny (KEY= u hostiteľa) — použije predvolenú hodnotu a každá iná neplatná hodnota vyhodí InvalidConfigurationException z package-toolkit s názvom kľúča. Názvy parametrov musia byť reťazce, limity a veľkosti stránky celé čísla aspoň 1.
- mode.\* — presne reject alebo ignore. Preklep vyhodí výnimku, namiesto aby sa potichu použil reject.
- limits.\* — nadbytočné položky sa zahodia a príliš dlhé hodnoty skrátia; request sa kvôli tomu nikdy neodmietne. Neplatný limit vyhodí výnimku, namiesto aby sa pretypoval a obmedzil na 1.
- Konfigurácia nemá env premenné — hodnoty meníte publikovaním konfiguračného súboru.

## 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/query-builder-for-laravel.md)
