---
title: "Viazanie subjektu — Onboarding for Laravel | Roundly"
description: "Vyhodnoťte tok pre konkrétny model alebo prihláseného používateľa — každé volanie Onboarding::for() vráti vlastnú naviazanú kópiu."
url: https://roundly-consulting.com/sk/open-source/navody/onboarding-for-laravel/viazanie-subjektu
language: sk
---

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

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

# Viazanie subjektu

Tok vyhodnocuje kroky voči subjektu — Eloquent Model alebo akémukoľvek Illuminate\\Contracts\\Auth\\Authenticatable. Tok subjektu získate cez Onboarding::for():

```php
Onboarding::for($user)?->percentageCompleted();            // the resolver's flow, else "default"
Onboarding::for($user, 'admin')?->percentageCompleted();   // a specific flow by key
```

Onboarding::find() vráti samotnú zaregistrovanú definíciu. Ak z nej čítate bez naviazania, použije pri čítaní prihláseného používateľa — auth()->user(). Explicitný subjekt má vždy prednosť, a to aj null: Onboarding::for(null) či $flow->for(null) nenaviaže žiadny subjekt a nikdy sa nevráti k prihlásenému používateľovi; kópie si toto naviazanie ponechajú:

```php
// binds auth()->user() implicitly
Onboarding::find('default')?->percentageCompleted();

// an explicit subject always wins
Onboarding::for($otherUser)?->percentageCompleted();

// null included — a missing user binds no subject, never the logged-in one
Onboarding::for(User::find($missingId))?->percentageCompleted();
```

V kontexte bez autentifikácie — obyčajný unit test, job vo fronte bez používateľa — zostáva subjekt null. Pravidlá aj deklaratívne pomocníky subjekt null znesú.

## Každý subjekt dostane vlastnú kópiu

Onboarding::for(), resolveFor() aj trait modelu vracajú kópiu zaregistrovaného toku — aj s kópiami krokov — naviazanú na subjekt. Toky dvoch subjektov nikdy nezdieľajú stav, ani v jednej požiadavke, jobe či dlhobežiacom workeri Octane, a zaregistrovaná definícia zostáva nenaviazaná:

```php
$mine = Onboarding::for($user);     // a copy bound to $user
$theirs = Onboarding::for($admin);  // another copy, bound to $admin

$mine?->percentageCompleted();      // still evaluates $user
$user->onboarding();                // the trait returns a copy too

// find() hands back the registered definition itself — add steps to it at boot,
// but read through for() so no subject is ever bound to the shared instance
Onboarding::find('default')?->add('Invite your team');
```

## Subjekt v udalostiach

Subjekt putuje v StepCompleted a FlowCompleted ako $for. Keďže subjektom môže byť akýkoľvek Authenticatable, listenery s typom ?Model $for by mali počítať aj so subjektom, ktorý nie je Model.

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