Я заметил, что представления кэша Laravel хранятся в ~/storage/framework/views.
Со временем они съедают мое пространство. Как мне их удалить? Есть ли какая-нибудь команда, которая могла бы? Я пробовал php artisan cache:clear,
но он не очищает кеш просмотров. При этом я должен вручную удалить файлы в указанной папке.
Также как отключить кэширование просмотров?
Теперь для этой задачи существует команда php artisan view:clear
, так как Laravel 5.1
Чтобы получить всю команду ремесленника, введите...
php artisan
Если вы хотите очистить кеш представления, просто используйте:
php artisan view:clear
Если вы не знаете, как использовать конкретную команду ремесленника, просто добавьте "помощь" (см. Ниже)
php artisan help view:clear
Прямо сейчас нет представления: очистить команду. Для laravel 4 это может вам помочь: https://gist.github.com/cjonstrup/8228165
Отключение кэширования может быть выполнено с помощью пропущенного клинка. Просмотр кэширования выполняется, поскольку компиляция клинов каждый раз является пустой тратой времени.
Чтобы ответить на ваш дополнительный вопрос, как отключить кеширование просмотров:
Вы можете сделать это, автоматически удалив файлы в папке для каждого запроса командой php artisan view:clear
, упомянутой DilipGurung. Ниже приведен пример класса Middleware из https://stackoverflow.com/questions/38595940/delete-laravels-storage-views-files-on-each-reload
<?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);
}
}
Однако вы можете заметить, что Larevel будет перекомпилировать файлы в папке /app/storage/views всякий раз, когда время в файлах представлений раньше времени на файлах blade-серверов PHP для макета. Я не могу думать о сценарии, где это необходимо сделать.
пожалуйста, попробуйте следующую команду:
sudo php artisan cache:clear
sudo php artisan view:clear
sudo php artisan config:cache
Надеюсь, это сработает для вас.
artisan config:cache
.env
что все ваши переменные .env
доступны через config()
, а не env()
иначе они будут нулевыми.