Yii2仅为一个视图文件更改主题
我有一个Yii2应用程序,它使用Yii2仅为一个视图文件更改主题,yii2,theming,Yii2,Theming,我有一个Yii2应用程序,它使用webvimark/user management模块处理用户。我创建了名为UserProfile的附加模型,它添加了一些附加功能和字段。对于那些感兴趣的人,我遵循以下指南: 我做了很多事情,创建了一个自定义的注册表单来处理新的配置文件字段。我唯一的问题是如何替换模块中包含的原始表单而不修改它。在这里,webvimark建议使用主题化: 但是,如何仅对包含表单的一个文件进行主题化?我不想改变剩下的和我能找到的所有主题化的例子来覆盖整个目录。有什么建议吗?经过一
webvimark/user management
模块处理用户。我创建了名为UserProfile
的附加模型,它添加了一些附加功能和字段。对于那些感兴趣的人,我遵循以下指南:
我做了很多事情,创建了一个自定义的注册表单来处理新的配置文件字段。我唯一的问题是如何替换模块中包含的原始表单而不修改它。在这里,webvimark建议使用主题化:
但是,如何仅对包含表单的一个文件进行主题化?我不想改变剩下的和我能找到的所有主题化的例子来覆盖整个目录。有什么建议吗?经过一番讨论,答案很简单。您必须对整个目录使用主题,因为显然没有其他选项。然而,我发现了这一点,即一旦您使用主题化,并且您的控制器尝试加载视图,那么它将首先在您创建的新主题目录下进行搜索,但如果在那里找不到,则返回原始目录 换句话说,覆盖整个目录,但是如果在新目录中只提供一个视图,其余视图将保持不变,这非常漂亮 我正在发布我在web配置文件中写下的代码,以防有人遇到路径问题:
'components' => [
'view' => [
'theme' => [
'pathMap' => [
'@app/vendor/webvimark/module-user-management/views/auth' => '@app/views/user-profile'
],
],
],
],
经过一番激烈的争论,答案很简单。您必须对整个目录使用主题,因为显然没有其他选项。然而,我发现了这一点,即一旦您使用主题化,并且您的控制器尝试加载视图,那么它将首先在您创建的新主题目录下进行搜索,但如果在那里找不到,则返回原始目录 换句话说,覆盖整个目录,但是如果在新目录中只提供一个视图,其余视图将保持不变,这非常漂亮 我正在发布我在web配置文件中写下的代码,以防有人遇到路径问题:
'components' => [
'view' => [
'theme' => [
'pathMap' => [
'@app/vendor/webvimark/module-user-management/views/auth' => '@app/views/user-profile'
],
],
],
],