Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 17.07.2018 12:23:43

Compiler cachePath

Подскажите как указывать путь к директории папки compiled. Хочу организовать темизацию макетов и разделить директории кеша

--storage
----framework
------views
--------admin
--------thems
-----------basetheme

Не в сети

#2 17.07.2018 12:45:03

Re: Compiler cachePath

выходит так что бы очистить кеш админа мне надо грохнуть и кеш публичной части. плюс если у меня множество макетов публичной части то весь кеш, если его на сбросить, будет копится в одной директории и при переключении с одного макета на другой нельзя не затронуть весь кеш!

Какой то кошмар...

Изменено Wizardev (17.07.2018 12:45:25)

Не в сети

#3 17.07.2018 13:31:40

Re: Compiler cachePath

Собственно на данный момент решил вопрос таким образом

class ViewServiceProvider extends \Illuminate\View\ViewServiceProvider
{
    public function registerBladeEngine($resolver)
    {
        $this->app->singleton('blade.compiler', function () {
            return new Compiller(
                $this->app['files'], $this->app['config']['view.compiled']
            );
        });
        $resolver->register('blade', function () {
            return new CompilerEngine($this->app['blade.compiler']);
        });
    }
}


class Compiller extends BladeCompiler
{
    public function setCachePath($path)
    {
        $this->cachePath = $path;
    }
}


class Controller extends \App\Http\Controllers\Controller
{
    public function __construct(BladeCompiler $compiler)
    {
        $path = 'frontend';
        View::addLocation(resource_path('views/') . $path);
        $compiler->setCachePath(config('view.compiled') .'/'. $path);
    }
}

Не в сети

Подвал раздела