好的,所以到目前为止,我已经使用我的模块的/etc/config.xml出现了 /admin /helloworld:

<config>
<module>
    <VMR_Reports>
        <version>1.0</version>
    </VMR_Reports>
</module>
<admin>
    <routers>
        <adminhtml>
            <args>
                <modules>
                    <module1 before="Mage_Adminhtml">VMR_Reports_Adminhtml</module1> <!-- Namespace_Module_Subdirectory -->
                </modules>
            </args>
        </adminhtml>
    </routers>
</admin>
</config>

但是我不了解那个示例中发生的一切。

1)我知道我正在配置一条路线,但是为什么?我很确定不是一个前名XML:

<admin>
    <routers>
        <modulename_admin>
            <use>admin</use>
            <args>
                <module>NameSpace_Modulename</module>
                <frontName>modulename_admin</frontName>
            </args>
        </modulename_admin>
    </routers>
</admin>

因此,似乎更像是逻辑部分。有人可以稍微解释第一个代码中的情况吗?我所知道的是,结果是我得到/admin/controler/contion以显示我可以指定的位置 _Adminhtml 如果我想将东西放入AdminHTML子目录中。

有帮助吗?

解决方案

好吧,因为我是Magento U视频中的那个人,我会发声。

没有路由器配置,与控制器相关的无效,这是 use, args/module, , 和 args/frontName 路径下 admin/routersfrontend/routers. 这些XPath的作用本质上是连接指定的模块的 控制器 目录到前名,允许将请求路由到控制器中的操作。

评估 args/modules (注意 s)路径是在Magento 1.3中引入的。 它允许模块在现存的前名称下添加其他控制器目录。 我的论点是,如果这种机制从1.0出现,则AdminHTML模块并不是当前的可怕聚合。模块控制器 处于境地 法师/adminhtml/Controller/ 为了使用管理员名称。有关更多信息,请参阅 1.2版Mage_Core_Controller_Varien_Router_Standard::collectRoutes() 并将其与 1.3+版本

管理路由器和标准路由器都共享 collectRoutes() 方法,这意味着一个适合另一个作用的方法。因此,在管理路由器中添加其他前名称在技术上通常没有任何错误。但是,管理员cookie路径可能会有问题,也许在角落里有一些时髦的东西,这会让我想遵循Magento的示例,即使用 args/modules 在AdminHTML模块的前名下添加目录的机制。

许可以下: CC-BY-SA归因
scroll top