yii2 - 仅在 yii2 中的 Lgin 之后包含一个注释
问题描述
所以我正在尝试将 Admin Lte 包与 Yii2 Basic 一起使用。我在网上看了一些关于如何安装它的教程。安装后它看起来很棒,但我有一个问题。我的问题是,我希望这个新视图仅在用户通过其他身份验证时才能工作,它应该遵循默认的 Yii2 应用程序。我如何在 web.php 中对此进行调节,或者是否有其他出路,我想知道。
Config/web.php
'view' => [
'theme' => [
'pathMap' => [
'@app/views' => '@vendor/dmstr/yii2-adminlte-asset/example-views/yiisoft/yii2-app'
],
],
],
解决方案
作为一个想法,您可以创建 2 个入口点:
@app/web/index.php
(我们称之为main
)@app/web/adminlte.php
(我们称之为adminlte
)
index.php
将包含它自己的配置文件(其中没有 adminlte-implementation)。
adminlte.php
将连接其配置文件(其中有 adminlte-implementation)。两个入口点都会触发Application::run()
运行 Yii 应用程序。
在 Web 服务器端配置 URL 拆分。例如:
example.com
-->index.php
cp.example.com
-->adminlte.php
或者
example.com/cp/
-->adminlte.php
example.com
-->index.php
或以您喜欢的其他方式。
另外,添加从一个应用程序到另一个应用程序的重定向:如果用户打开基于 URLadminlte
并且他没有被授权,则将他重定向到main
. 如果用户打开基于 URLmain
并且他被授权,则将他重定向到adminlte
.
结果,你得到了 2 个入口点(2 个独立的 Yii 应用程序)。但同时,他们将能够使用相同的数据库和相同的代码库(模型、身份验证等)毫无问题地工作。
推荐阅读
- c++ - C++ lambda 按值捕获语义和允许的优化
- python - 在 Python 中实现广义生日悖论
- python - Python:将许多具有共享键的字典(在 JSON 中)连接到一个大字典中
- c++ - 编译时是否需要动态库
- node.js - 从 Node JS App Engine server.js 文件(标准环境)连接到 GCloud SQL 2
- java - 常规和 Spring 抽象的 Ignite 事务在手动重新连接后以 IllegalStateException 失败,clientReconnectDisabled 为 true
- android - 跳过密码或图案屏幕,直接打开应用程序
- java - 如何在使用 dom4j 迭代器时消除未经检查的赋值警告
- database - 避免 Postgres 表中有超过 1500 列
- python - python中列中的模式匹配