Jak zrobić routing subdomeny laravel

Jak zrobić routing subdomeny laravel
Routing subdomeny jest taki sam, jak prefiks routingu, ale jest zaskoczony przez subdomenę zamiast prefiks. Istnieją dwa podstawowe zastosowania tego. Po pierwsze, możesz przedstawić różne sekcje aplikacji (lub zupełnie różne aplikacje) na różne subdomeny. Poniższy przykład pokazuje, jak to zrobić: trasa :: grupa (['domain' => 'API.laravel-recipes.com '], function ()
Trasa :: get ('/', function ()
//
);
);

Po drugie, możesz ustawić część subdomeny jako parametr, jak pokazano w poniższym przykładzie. Odbywa się to najczęściej w przypadkach wielokrotności (pomyśl Slack lub Harvest, gdzie każda firma ma własną subdomenę).

Trasa :: ['domain' => 'konto.laravel-recipes.com '], function ()
Trasa :: get ('/', funkcja ($ konta)
//
);
Trasa ('/users/id', funkcja ($ konto, $ id)
//
);
);

Zauważ, że wszelkie parametry grupy są przekazywane do metod zgrupowanych tras jako pierwszy parametr (y).

Przestrzeń nazw prefiksów

Kiedy grupujesz trasy według prefiksu subdomeny lub trasy, prawdopodobnie ich kontrolery mają podobną przestrzeń nazw PHP. W przykładzie interfejsu API wszystkie kontrolery API mogą znajdować się w przestrzeni nazw API. Korzystając z prefiksu przestrzeni nazwy grupy trasy, jak pokazano w poniższych przykładach, możesz uniknąć odniesień do długich kontrolerów w grupach takich jak API/Controlera@INDEX i API/ControllerB@indeks.

// App \ http \ Controllers \ Controlera
Trasa :: get ('/', 'controlera@index');
// app \ http \ controllers \ api \ controllerb
Trasa :: ['namienna przestrzeń' => 'api'], function ()
Trasa :: get ('/', 'controllerB@index');
)

Nazwa prefiksów

Nazwa prefiksów nie zatrzymuj się na tym. Często zdarza się, że nazwy tras odzwierciedlają łańcuch dziedziczenia elementów ścieżki, więc użytkownicy/komentarze/5 będą obsługiwane przez trasę o nazwie użytkownicy.uwagi.pokazywać. W takim przypadku często korzystanie z grupy tras wokół wszystkich tras, które są pod użytkownikami.Komentarze Zasoby.

Tak jak możemy prefiks segmenty adresu URL i przestrzeni nazw kontrolerów, możemy również prefiksować ciągami do nazwy trasy. Dzięki prefiksom nazwy grupy trasy możemy zdefiniować, że każda trasa w tej grupie powinna mieć podany ciąg prefiks. W tym kontekście prefiksujemy użytkowników do każdej nazwy trasy, a następnie komentarze.

Trasa :: [[AS '=>' Użytkownicy.',' prefix '=>' Users '], function ()
Trasa :: ['as' => 'komentarze', 'prefiks' => 'komentarze'], function ()
// Nazwa trasy będą użytkownicy.uwagi.pokazywać
Trasa :: get ('id', funkcja ()
//
)-> nazwa („show”);
);
);