Как добавить новый макет для панели администратора

Класс SimpleNamespace может использоваться для создания новых атрибутов с помощью setattr или подкласса SimpleNamespace и создания вашей собственной функции для добавления новых имен атрибутов (переменных).

from types import SimpleNamespace

variables = {"b":"B","c":"C"}
a = SimpleNamespace(**v)
setattr(a,"g","G")
a.g = "G+"
something = a.a
0
задан knt92 23 March 2019 в 21:10
поделиться

1 ответ

Пути к шаблону могут быть найдены в классе ConfigProvider => __, вызывают метод, под 'шаблонами' => 'пути' или в getTemplates () метод. Там необходимо добавить новый путь:

/**
     * Returns the templates configuration
     */
    public function getTemplates(): array
    {
        return [
            'paths' => [
                'app'    => [__DIR__ . '/../templates/app'],
                'error'  => [__DIR__ . '/../templates/error'],
                'layout' => [__DIR__ . '/../templates/layout'],
                'admin'  => [__DIR__ . '/../templates/admin'],
            ],
        ];
    }

затем Ваш обработчик должен выглядеть примерно так

public function handle(ServerRequestInterface $request) : ResponseInterface
    {

        $data = [
            'admin' => 'layout::admin',
            // or 'layout::admin',
            // or 'layout::alternative',
        ];
        $content = $this->template->render('admin::app/admin-page', $data);
        return new HtmlResponse($content);
    }
0
ответ дан Razvan Ionascu 28 April 2019 в 22:10
поделиться
Другие вопросы по тегам:

Похожие вопросы: