2017-01-18 2 views
0

Mein Projekt benötigt neue Spiegel-Domain jede Woche nur für die API.
Um dies zu tun, fügen Sie in der Routendatei eine Route::group für jede Domänen hinzu.Merge Route :: Gruppendomäne Laravel 5

Route::group(['domain' => 'domain2.com'], function(){ 
    Route::group(['namespace' => 'Api', 'prefix' => 'r'], function() { 
     Route::get('/{hash}', '[email protected]'); 
    }); 
    Route::get('/', function(){ 
     return view('errors.noshort'); 
    }); 
}); 

Route::group(['domain' => 'domain1.com'], function(){ 
    Route::group(['namespace' => 'Api', 'prefix' => 'r'], function() { 
     Route::get('/{hash}', '[email protected]'); 
    }); 
    Route::get('/', function(){ 
     return view('errors.noshort'); 
    }); 
}); 
  1. Wie kann ich diese zwei Route::group und die nächste fusionieren?
  2. Kann ich alle Domänen aus meiner Datenbank dynamisch die Route ausführen lassen?

Antwort

1

Direkt Sie Array domain nicht zuordnen bedeuten kann. Es erwartet nur einzelne String-Parameter.

Sie können so tun. um Route::group in Ihrem DB zu speichern holen Sie es in Ihre route Datei

Versuchen Sie diese Hoffnung, die es hilft.

wie

$domains = \App\Domain::all(); 

foreach ($domains as $domain) { 
    Route::group(['domain' => $domain->domainName], function(){ 
     Route::group(['namespace' => 'Api', 'prefix' => 'r'], function() { 
     Route::get('/{hash}', '[email protected]'); 
     }); 
     Route::get('/', function(){ 
     return view('errors.noshort'); 
     }); 
    }); 
} 
1

1 Link Ihre Domains wie folgt aus:

$apiRoutes = function() { 
    Route::group(['namespace' => 'Api', 'prefix' => 'r'], function() { 
     Route::get('/{hash}', '[email protected]'); 
    }); 
    Route::get('/', function(){ 
     return view('errors.noshort'); 
    }); 
}; 

Route::group(['domain' => 'domain2.com'], $apiRoutes); 
Route::group(['domain' => 'domain1.com'], $apiRoutes); 

2 Schwer verstehen, was Sie importieren Sie Ihre Domains