Szukaj…
Zmień domyślny katalog aplikacji
Istnieją przypadki użycia, w których możesz chcieć zmienić nazwę katalogu aplikacji na coś innego. W Laravel4 możesz po prostu zmienić wpis konfiguracji, oto jeden ze sposobów, aby to zrobić w Laravel5.
W tym przykładzie zmienimy nazwę katalogu app na src .
Zastąp klasę aplikacji
app nazw katalogów jest zapisana na stałe w podstawowej klasie aplikacji, więc należy ją przesłonić. Utwórz nowy plik Application.php . Wolę trzymać mój w katalogu src (tym, którym zastąpimy aplikację), ale możesz go umieścić gdzie indziej.
Oto jak powinna wyglądać przesłonięta klasa. Jeśli chcesz mieć inną nazwę, po prostu zmień ciąg src na coś innego.
namespace App;
class Application extends \Illuminate\Foundation\Application
{
/**
* @inheritdoc
*/
public function path($path = '')
{
return $this->basePath . DIRECTORY_SEPARATOR . 'src' . ($path ? DIRECTORY_SEPARATOR . $path : $path);
}
}
Zapisz plik. Skończyliśmy z tym.
Dzwonię do nowej klasy
Otwórz bootstrap/app.php i zlokalizuj
$app = new Illuminate\Foundation\Application(
realpath(__DIR__.'/../')
);
Zastąpimy to tym
$app = new App\Application(
realpath(__DIR__.'/../')
);
Kompozytor
Otwórz plik composer.json i zmień automatyczne ładowanie, aby dopasować je do nowej lokalizacji
"psr-4": {
"App\\": "src/"
}
I wreszcie, w wierszu poleceń uruchom composer dump-autoload a twoja aplikacja powinna być obsługiwana z katalogu src .
Zmień katalog kontrolerów
jeśli chcemy zmienić katalog Controllers , potrzebujemy:
- Przenieś i / lub zmień nazwę domyślnego katalogu
Controllerstam, gdzie go chcemy. Na przykład odapp/Http/Controllersdoapp/Controllers
- Zaktualizuj wszystkie przestrzenie nazw plików w folderze
Controllers, dostosowując je do nowej ścieżki, uwzględniając specyfikę PSR-4.
- Zmień przestrzeń nazw stosowaną w pliku
routes.php, edytującapp\Providers\RouteServiceProvider.phpi zmień to:
protected $namespace = 'App\Http\Controllers';
do tego:
protected $namespace = 'App\Controllers';