サーチ…


デフォルトのアプリディレクトリを変更する

あなたのアプリディレクトリの名前を別のものに変更したいというユースケースがあります。 Laravel4では、設定項目を変更するだけで、Laravel5で行うことができます。

この例では、 appディレクトリの名前をsrc変更します。

オーバーライドアプリケーションクラス

ディレクトリ名appはコアApplicationクラスにハードコードされているため、オーバーライドする必要があります。新しいファイルApplication.php作成します。私はsrcディレクトリ(私たちはappと置き換えるもの)に私のものを残しておく方が好きですが、別の場所に置くことができます。

オーバーライドされたクラスの外観は次のとおりです。別の名前が必要な場合は、文字列srcを別のものに変更してください。

namespace App;

class Application extends \Illuminate\Foundation\Application
{
    /**
     * @inheritdoc
     */
    public function path($path = '')
    {
        return $this->basePath . DIRECTORY_SEPARATOR . 'src' . ($path ? DIRECTORY_SEPARATOR . $path : $path);
    }
}

ファイルを保存します。私たちはそれで終わった。

新しいクラスを呼び出す

bootstrap/app.php

$app = new Illuminate\Foundation\Application(
    realpath(__DIR__.'/../')
);

私たちはこれをこれに置き換えます

$app = new App\Application(
    realpath(__DIR__.'/../')
);

作曲家

composer.jsonファイルを開き、新しい場所に合わせてオートローディングを変更してください

"psr-4": {
    "App\\": "src/"
}

最後に、コマンドラインでcomposer dump-autoloadを実行すると、 srcディレクトリからアプリケーションが提供されます。

Controllersディレクトリを変更する

私たちが必要とするControllersディレクトリを変更したい場合は:

  1. 必要な場所にあるデフォルトのControllersディレクトリを移動および/または名前を変更します。たとえば、 app/Http/Controllersからapp/Controllers
  1. Controllersフォルダ内のファイルのすべてのネームスペースを更新し、PSR-4固有のものを尊重して、新しいパスに従うようにします。
  1. routes.phpファイルに適用されている名前空間をapp\Providers\RouteServiceProvider.phpを編集して変更し、これを変更します。
protected $namespace = 'App\Http\Controllers';

これに:

protected $namespace = 'App\Controllers';


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow