---
title: "Artisan príkazy — Sluggable for Laravel | Roundly"
description: "Doplnenie a regenerovanie slugov, vytvorenie natívnych indexov a audit duplicít pred pridaním unikátneho indexu."
url: https://roundly-consulting.com/sk/open-source/navody/sluggable-for-laravel/prikazy
language: sk
---

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

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

# Artisan príkazy

```bash
php artisan sluggable:regenerate "App\Models\Product"                          # backfill empty slugs
php artisan sluggable:regenerate "App\Models\Topic" --locale=de                # backfill a new locale
php artisan sluggable:regenerate "App\Models\Product" --mode=stale --history --dry-run
php artisan sluggable:regenerate "App\Models\Product" --mode=all --force --chunk=1000 --queue
php artisan sluggable:indexes "App\Models\Topic" --column=slug --dry-run
php artisan sluggable:duplicates "App\Models\Product" --column=slug --locale=sk
```

{model} prijíma názov triedy alebo morph alias; musí ísť o Eloquent model, ktorý implementuje Sluggable. Každý príkaz je dostupný aj cez fasádu — pre plánované úlohy, deploy skripty aj vlastné príkazy:

```php
use RoundlyConsulting\Sluggable\Enums\RegenerationMode;
use RoundlyConsulting\Sluggable\Facades\Slugs;

Slugs::model(Product::class)->regenerate(mode: RegenerationMode::Stale, withHistory: true, dryRun: true);
Slugs::model(Product::class)->queueRegeneration(mode: RegenerationMode::All, chunk: 1000, force: true);
Slugs::model(Topic::class)->indexes(dryRun: true);
Slugs::model(Product::class)->duplicates(column: 'slug', locale: 'sk');
```

## sluggable:regenerate

| Voľba | Účinok |
| --- | --- |
| `--mode=missing` | Predvolené. Doplní prázdne slugy a chýbajúce jazyky. |
| `--mode=stale` | Prepočíta; nahradí len hodnoty, ktorých základ sa zmenil (bez zbytočných zmien), a odstráni sufix, ak je holý základ opäť voľný. |
| `--mode=all` | Prepočíta všetko; bez --force si vyžiada potvrdenie. |
| `--column, --locale` | Obmedzia beh; --locale=de doplní nový jazyk. |
| `--chunk` | Riadky na chunk (1–10000, predvolene 500). |
| `--dry-run` | Vypíše až 20 zmien (kľúč, stĺpec, jazyk, staré → nové); nič nezapíše. |
| `--history` | Zaznamená vyradené hodnoty aj pre definície bez keepHistory(). |
| `--without-events` | Neodošle SlugChanged. |
| `--force` | Obíde zámky (lockWhen / locked) aj potvrdenie. |
| `--queue` | Odošle jeden RegenerateSlugsJob na každý chunk kľúčov. |

Riadky sa prechádzajú bez globálnych scopes (vrátane zmazaných a odfiltrovaných), po chunkoch podľa kľúča, a každý zmenený riadok sa uloží bežným spôsobom — s históriou aj eventmi. Zámky sa rešpektujú, pokiaľ nepoužijete --force. Job vo fronte serializuje len identifikátory a voľby, nikdy modely. SlugsRegenerated sa spustí na konci každého behu alebo chunku z fronty, nie však pri dry run.

## sluggable:indexes

Spustí SlugIndexes::forModel() pre model a vypíše DDL, už existujúce indexy a súhrn. Použite ho po pridaní jazyka na vytvorenie jeho indexov a s --dry-run na náhľad. Chyby definície, napríklad kolidujúce jazyky, príkaz ukončia chybou.

## sluggable:duplicates

Vypíše hodnoty, ktoré by unikátny index odmietol — zoskupené podľa hodnôt rozsahu, jazyka a slugu, bez globálnych scopes — a tiež hodnoty dlhšie ako maxLength; stĺpec s notUnique() index nedostane, preto sa pri ňom vypíšu len príliš dlhé hodnoty. Spustite ho pred pridaním indexu k existujúcim údajom. Len reportuje: údaje nikdy nemení a v každom prípade skončí kódom 0.

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