我想创建一个只能从管理区域可见的Magento的新模块。Magento管理模块控制器 - 加载另一个动作
我已经成功创建了模块,现在已经创建了一个名为'editproducts'的控制器。在这个控制器中我有indexAction和testAction。
当我去/ quickedit/editproducts /它从控制器加载indexAction完美的罚款,但是当我去/ quickedit/editproducts/test /它重定向到仪表板而不是调用testAction。从我看到的教程中,我似乎已经正确设置了一切。
我的config.xml文件:
<config>
<modules>
<Test_Quickedit>
<version>0.1.0</version>
</Test_Quickedit>
</modules>
<global>
<helpers>
<quickedit>
<class>Test_Quickedit_Helper</class>
</quickedit>
</helpers>
</global>
<admin>
<routers>
<the_name_of_this_element_is_not_important_it_should_be_unique>
<use>admin</use>
<args>
<module>Test_Quickedit</module>
<frontName>quickedit</frontName>
</args>
</the_name_of_this_element_is_not_important_it_should_be_unique>
</routers>
</admin>
<adminhtml>
<menu>
<menu1 translate="title" module="quickedit">
<title>Test</title>
<sort_order>60</sort_order>
<children>
<menuitem1 module="quickedit">
<title>Edit Products</title>
<action>quickedit/editproducts</action>
</menuitem1>
</children>
</menu1>
</menu>
<acl>
<resources>
<admin>
<children>
<catalog>
<children>
<quickedit_editproducts>
<title>Edit Products</title>
</quickedit_editproducts>
</children>
</catalog>
</children>
</admin>
</resources>
</acl>
</adminhtml>
</config>
我EditproductsController.php
class Test_Quickedit_EditproductsController extends Mage_Adminhtml_Controller_Action
{
public function indexAction()
{
echo 'edit products';
}
public function testAction()
{
echo 'test';
}
}
您是如何为testAction生成url的?它需要从代码中生成,因为它需要密钥(不能直接访问,只能通过浏览器更改url) – ivantedja
EditproductsController的路径是什么?如果你在echo'test'后设置退出,它会做什么不同的事情吗? – Nate
嗨ivantedja,我必须在哪里生成URL?我遵循了许多教程来创建一个模块,并没有提到手动生成URL。 –