Heim  >  Artikel  >  PHP-Framework  >  Über einfache implizite Routing-Modellbindung in Laravel 7

Über einfache implizite Routing-Modellbindung in Laravel 7

藏色散人
藏色散人nach vorne
2020-04-07 09:06:032538Durchsuche

Über einfache implizite Routing-Modellbindung in Laravel 7

In der nächsten Hauptversion von Laravel können Sie die implizite Routenmodellbindung direkt in der Routendefinition anpassen:

Empfohlen: Laravel-Tutorial

Route::get('/posts/{post:slug}', function (Post $post) {
    // ...
});

Bei Verwendung von Laravel 6 müssen Sie derzeit für die folgenden Anforderungen eine getRouteKeyName()-Methode wie folgt für das Modell definieren:

<?php
class Post extends Model
{
    /**
     * Get the route key for the model.
     *
     * @return string
     */
    public function getRouteKeyName()
    {
        return &#39;slug&#39;;
    }
}

Sie können jedoch weiterhin die getRouteKeyName()-Methode verwenden Ich denke, es wäre einfacher, es direkt in der Route anzupassen.

Vielleicht haben Sie mehrere Routen, die Sie auf unterschiedliche Weise binden möchten. Beispielsweise verwendet die Front-End-Route Slugs, um Beiträge anzuzeigen, und das Back-End hofft, Beiträge nach ID zu verwalten

Route::get(&#39;/posts/{post:slug}&#39;, function (Post $post) {
    // ...
});
// 或者你在这儿可以用默认的`{post}`
Route::get('/admin/posts/{post:id}/edit', function (Post $post) {
    // ...
});

Wenn Sie versuchen, die implizite Routing-Modellbindung anzupassen, können Sie die Entwicklungsversion von installieren Laravel

laravel new example --dev

Der Artikel wird von der professionellen Laravel-Entwickler-Community weitergeleitet, Originallink: https://learnku.com/laravel/t/37702

Das obige ist der detaillierte Inhalt vonÜber einfache implizite Routing-Modellbindung in Laravel 7. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:learnku.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen