2017-03-20 4 views

Antwort

1

Sie sind völlig verschiedene Dinge.

‚Posts‘ ist die Zeichenfolge ‚Posts‘

Admin\PostsController::class ist höchstwahrscheinlich die Zeichenfolge ‚App \ Http \ Controllers \ Admin \ Posts‘

Wenn Sie die zweite man es am Ende aussehen wird App\Http\Controllers\App\Http\Controllers\Admin\PostsController wie Laravel nimmt bereits den Namespace für die Controller App\Http\Controllers basierend auf was in Ihrem RouteServiceProvider festgelegt ist.

Wenn Sie nur ‚Posts‘ Laravel endet mit App\Http\Controllers\PostsController auf. Diese

ist, wie seine Setup standardmäßig. (Vorausgesetzt, dass Sie keine Gruppen, die den Namespace verwendet werden, Einstellung)

0

Der Unterschied zwischen den beiden ist, dass der erste für einen Controller im gleichen Umfang wie die Datei aussehen wird, in dem Sie Ihre Routen angeben. Die zweite wird nach einem Controller namens PostsController im Namespace Admin suchen.

Wenn diese Stellen ein und derselbe sind, gibt es keinen Unterschied zwischen den beiden Strecken sein.

In Antwort auf den zweiten Teil der Frage, die Sie verwenden wählen, ist wirklich an Ihnen. Ich benutze persönlich Routengruppen, um meinen Namespacing (unter anderem) so zu handhaben:

Route::group([ 
    'namespace' => 'Admin', 
], function() { 
    Route::resource('posts', 'PostsController'); 
} 
Verwandte Themen