84669 person learning
152542 person learning
20005 person learning
5487 person learning
7821 person learning
359900 person learning
3350 person learning
180660 person learning
48569 person learning
18603 person learning
40936 person learning
1549 person learning
1183 person learning
32909 person learning
yii2进行前后台分离,backend和frontend已经配置好正常用了,但是第三方模块或者自己弄得模块,都是基于frontend来做的,而且他的模块里没有响应的设置来区分前台和后台,这时候如果把模块注册到frontend中,内部相应的管理相关的控制器实际上在frontend也能访问到。如何进行优雅的分离,我的意思是不是用RBAC来控制,是前台压根就访问不到。
学习是最好的投资!
可以在frontend和backend的同级目录下,新建一个module目录,存放公共模块,然后在需要的地方引导启动模块。例如要在frontend中使用myModule模块,在config中添加如下:
[ 'bootstrap' => [ 'myModule', ], 'modules' => [ 'myModule' => 'app\module\myModule', ], ]
然后在frontend项目中,就可以用$module = myModule::getInstance();访问了。
$module = myModule::getInstance();
参考http://www.yiichina.com/doc/guide/2.0/st...
yii2默认的高级模板中就已经区分了前台、后台、公用目录了frontendbackendcommon
frontend,backend同时可以依赖common但frontend、backend之间不做依赖,有依赖的项都放common
你新建的module也要按职能区分开的前台的module放frontend后台用的module放backend公用的再抽出来放common
可以在frontend和backend的同级目录下,新建一个module目录,存放公共模块,然后在需要的地方引导启动模块。例如要在frontend中使用myModule模块,在config中添加如下:
然后在frontend项目中,就可以用
$module = myModule::getInstance();
访问了。参考http://www.yiichina.com/doc/guide/2.0/st...
yii2默认的高级模板中就已经区分了前台、后台、公用目录了
frontend
backend
common
frontend,backend同时可以依赖common
但frontend、backend之间不做依赖,有依赖的项都放common
你新建的module也要按职能区分开的
前台的module放frontend
后台用的module放backend
公用的再抽出来放common