什么是在magento路线的正确方法?

时间:2014-12-12 09:09:59

标签: xml magento

我正在使用magento的管理路线,而且我遇到了两种方法,但我不确定哪种方法正确?

路由器1:



    <admin>
        <routers>
            <tradecounter>
                <use>admin</use>
                <args>
                    <module>Relentless_Tradecounter_Adminhtml</module>
                    <frontName>tradecounter_admin</frontName>
                </args>
            </tradecounter>
        </routers>
    </admin>
&#13;
&#13;
&#13;

工作和路由器2:

&#13;
&#13;
        	<adminhtml>
            	<args>
                	<modules>
                    	<tradecounter before="Mage_Adminhtml">Relentless_Tradecounter_Adminhtml</tradecounter>
                	</modules>
            	</args>
        	</adminhtml>
&#13;
&#13;
&#13;

似乎没有用,但我可能在xml中犯了错误。

提前致谢

戴夫

3 个答案:

答案 0 :(得分:1)

没有错误的做法。
它们都很好用。
但我建议使用第二种方法 优点是您的模块的管理员网址将以admin而不是tradecounter_admin开头 这看起来更加一致,如果您有一个完整的页面缓存系统(例如Varnish),您不需要为现在应该缓存的页面设置很多规则。只是一个简单的。 “如果它以admin开头,则不要缓存”。

向下。如果你有2个模块2个控制器同名,你会发生冲突 但是,通过将管理控制器放在一个名为与模块相同的单独文件夹中,可以轻松解决这个问题。

因此,您应该Relentless/Tradecounter/controllers/Adminhtml/PageController.php而不是Relentless/Tradecounter/controllers/Adminhtml/Tradecounter/PageController.php 然后您的管理员网址看起来像admin/tradecounter_page/index

有关编写模块see this

的更多指南

答案 1 :(得分:0)

路由器1是正确的方法。

如果它还没有工作,那么你可以检查每个模块文件和目录以及xml文件的大小写。

您可以使用本教程。

http://inchoo.net/magento/getting-started-with-building-admin-module-in-magento/

答案 2 :(得分:0)

我认为第一个适合你。 所以它应该是这样的:

<admin>
    <routers>
        <tradecounter>
            <use>admin</use>
            <args>
                <module>Relentless_Tradecounter</module>
                <frontName>tradecounter_admin</frontName>
            </args>
        </tradecounter>
    </routers>
</admin>