我希望使用UserController
实现扩展setEventManager
,以显示另一个布局 - 只需使用登录掩码。
当我调用网址www.example.com
时,我会使用其他布局获取控制器。
但如果输入错误的用户名,我会重定向to www.exmpale.com/user/login
并获得默认布局。
如何覆盖ZfcUser Module
的所有路由并将其重定向到我自己的控制器,以确保UserController
无法直接调用。
谢谢。
答案 0 :(得分:1)
如果我理解你的问题,你可能只需编辑文件module.config.php
。它包含所有route definitions。
根据我对你的问题的理解,你有一个名为MyBetterUserController
的自己的控制器?
您可以将自己的模块添加为ZfcUser
模块的扩展名,也许您想要将其称为ZfcUserMod
。此新模块将仅包含Module.php
文件和包含配置文件的文件夹config
。
然后,您可以在此模块的配置文件中定义路线,并覆盖ZfcUser
的所有路线。确保使用与ZfcUser
完全相同的路径名(数组中的键)(目前使用 zfcuser 作为路径名)。否则,路线不会被覆盖,UrlHelper将不会使用您的路线。
然后在{/ strong> ZfcUserMod
之后将application.config.php
添加到全局ZfcUser
。
答案 1 :(得分:0)
仅重写controllers -> invocables pointing 'zfcuser' => 'namespace\your\extendedusercontroller'
而不是重写所有路线会不会更容易?