2016-07-26 1 views
2

私は素晴らしいブレードを使用していますが、コンパイルし直してHTMLファイルを作成する必要があります。各リロード時にLaravelのストレージ/ビューファイルを削除します

したがって、開発段階では、各ページの再ロード時にストレージビュー内のすべてのファイルを削除する方法を調べる必要があります。

easiesのPHPコードは何ですか、私はどこに置くべきですか?ベースコントローラーで?ファイラーまたはroutes.phpで?

ありがとうございます。私は立ち往生して、削除コードを置く場所をアドバイスする必要があるので、ブレードがストレージ/ビューのhtmlファイルとしてコンパイルされた後は削除されません。

答えて

3

PHP5以上を実行している場合は、以下を試すことができます。環境に応じて、またはデバッグモードがオンになっている場合は、スイッチをオンまたはオフに切り替えることができます。

<?php 
if (env('APP_DEBUG') || env('APP_ENV') === 'local') 
    ini_set('opcache.revalidate_freq', '0'); 

artisanコマンドを呼び出して、ミドルウェアまたはルートフィルタを使用してキャッシュをクリアすることもできます。

Laravel 4

<?php 
App::before(function($request) 
{ 
    if (env('APP_DEBUG') || env('APP_ENV') === 'local') 
     Artisan::call('view:clear'); 
}); 

Laravel 5+ミドルウェア:

<?php 
namespace App\Http\Middleware; 

use Artisan; 
use Closure; 

class ClearViewCache 
{ 
    /** 
    * Handle an incoming request. 
    * 
    * @param \Illuminate\Http\Request $request 
    * @param \Closure $next 
    * @return mixed 
    */ 
    public function handle($request, Closure $next) 
    { 
     if (env('APP_DEBUG') || env('APP_ENV') === 'local') 
      Artisan::call('view:clear'); 

     return $next($request); 
    } 
} 
+0

うわー、おかげで私は明日それを試してみて、あなたが知っているだろう。.. –

関連する問題