Yii2 меняет тему только для одного файла просмотра

У меня есть приложение Yii2, которое использует модуль webvimark/user-management для работы с пользователями. Я создал дополнительную модель под названием UserProfile, которая добавляет некоторые дополнительные функции и поля. Для тех, кто заинтересован, я следовал этому руководству: https://github.com/webvimark/user-management/wiki/Profile-and-custom-registration

У меня почти все работает, есть специальная регистрационная форма, созданная для работы с новыми полями профиля. Единственная проблема, которая у меня есть, заключается в том, как заменить исходную форму, включенную в модуль, не изменяя ее. Здесь webvimark предлагает использовать для этого тему: https://github.com/webvimark/user-management/issues/10

Как создать тему только для одного файла, содержащего форму? Я бы не хотел менять остальные, и все примеры тем, которые я могу найти, перезаписывают весь каталог. Какие-либо предложения?


person mmvsbg    schedule 25.08.2016    source источник


Ответы (1)


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

Другими словами, вы перезаписываете весь каталог, но если вы предоставляете только одно представление в новом, остальное останется прежним, что очень красиво.

Я публикую код, который я записал в свой файл веб-конфигурации, на случай, если кто-то борется с путями:

'components' => [
    'view' => [
        'theme' => [
            'pathMap' => [
                '@app/vendor/webvimark/module-user-management/views/auth' => '@app/views/user-profile'
            ],
        ],
    ],
],
person mmvsbg    schedule 26.08.2016