Magento管理员控制器不工作



我是magento的新手,在执行管理控制器时遇到了问题。以下是我所做的。

Mailchimp/mailchimpmodule/etc/config.xml

<?xml version="1.0"?>
<config>
<modules>
    <Mailchimp_Mailchimpmodule>
        <version>1.0.0</version>
        <depends>
            <!-- no dependencies -->
        </depends>
    </Mailchimp_Mailchimpmodule>
</modules>
<global>
    <models />
    <blocks />
    <resources />
    <extraconfig />
    <helpers>
        <mailchimpmodule>
            <class>Mailchimp_Mailchimpmodule_Helper</class>
        </mailchimpmodule>
    </helpers>
</global>
<admin>
    <routers>
        <adminhtml>
            <args>
                <modules>
                    <foo_bar before="Mage_Adminhtml">Mailchimp_Mailchimpmodule_Adminhtml</foo_bar>
                </modules>
            </args>
        </adminhtml>
    </routers>
</admin>
<frontend>
    <layout>
        <updates>
            <mailchimpmodule>
                <file>mailchimp.xml</file>
            </mailchimpmodule>
        </updates>
    </layout>       
</frontend> 
</config>

Mailchimp/mailchimpmodule/etc/adminhtml.xml

<?xml version="1.0" encoding="UTF-8"?>
<config>
<menu>
    <mailchimpmodule module="mailchimpmodule" translate="title">
        <title>Mailchimp</title>
        <sort_order>100</sort_order>
        <children>
            <settings module="mailchimpmodule" translate="title">
                <title>Settings</title>
                <sort_order>1</sort_order>
                <action>adminhtml/settings/index</action>
            </settings>
        </children>
    </mailchimpmodule>
</menu>
<acl>
    <resources>
        <admin>
            <children>
                <settings translate="title" module="mailchimpmodule">
                    <title>Mailchimp</title>
                    <sort_order>100</sort_order>
                    <children>
                        <index translate="title">
                            <title>Settings</title>
                            <sort_order>1</sort_order>
                        </index>
                    </children>
                </settings>
            </children>
        </admin>
    </resources>
</acl>
</config>

Mailchimp/mailchimpmodule/controller/adminhtml/IndexController.php

<?php
class Mailchimp_Mailchimpmodule_Adminhtml_SettingsController extends     Mage_Adminhtml_Controller_Action
{  
public function indexAction()
{
    $this->loadLayout()
            ->_addContent(
            $this->getLayout()
            ->createBlock('mailchimp_mailchimpmodule/adminhtml_mailchimpmodule')
            ->setTemplate('mailchimp/form.phtml'))
            ->renderLayout();       
}   
}

我可以在管理中看到MailChimp->Settings选项,但当我点击它时,它显示404未找到。以下是被调用的URL:

http://localhost/magento/index.php/admin/settings/index/key/efdd74577eb9cbb46237c3803bc4e29c/

您的问题在admin/routers部分。您有foo_bar的地方应该是您的模块名称。

<admin>
    <routers>
        <adminhtml>
            <args>
                <modules>
                    <Mailchimp_Mailchimpmodule before="Mage_Adminhtml">Mailchimp_Mailchimpmodule_Adminhtml</Mailchimp_Mailchimpmodule>
                </modules>
            </args>
        </adminhtml>
    </routers>
</admin>

此外,您的controllers/adminhtml/IndexController.php应该位于一个大写为"a"的文件夹中,如controllers/adminhtml/IndexController.php。

最新更新