管理控制器在客户端Magento中不起作用


admin controller not working in client side Magento

我正在创建一个新模块,它将记录联系我们页面中的所有数据。所有数据信息将显示在管理面板中。

我的配置中有以下代码.xml

<?xml version="1.0"?>
<config>
<modules>
    <Vampi_Contactsform>
        <version>1.0.0</version>
    </Vampi_Contactsform>
</modules>
<global>
    <models>
        <vampi_contactsform>
            <class>Vampi_Contactsform_Model</class>
            <resourceModel>vampi_contactsform_mysql4</resourceModel>
        </vampi_contactsform>
    </models>
   <resources>
        <vampi_setup>
            <setup>
                <module>Vampi_Contactsform</module>
            </setup>
            <connection>
                <use>core_setup</use>
            </connection>
        </vampi_setup>
        <vampi_write>
            <connection>
                <use>core_write</use>
            </connection>
        </vampi_write>
        <vampi_read>
            <connection>
                <use>core_read</use>
            </connection>
        </vampi_read>
    </resources>
    <blocks>
        <vampi_contactsform>
            <class>Vampi_Contactsform_Block</class>
        </vampi_contactsform>
    </blocks>
    <helpers>
        <vampi_contactsform>
            <class>Vampi_Contactsform_Helper</class>
        </vampi_contactsform>
    </helpers>
</global>
<admin>
    <routers>
        <adminhtml>
            <args>
                <modules>
                    <vampi_contactsform before="Mage_Adminhtml">Vampi_Contactsform_Adminhtml</vampi_contactsform>
                </modules>
            </args>
        </adminhtml>
    </routers>
</admin>
 <frontend>
    <routers>
        <contactsform>
            <args>
                <modules>
                    <vampi_contactsform before="Mage_Contactsform">Vampi_Contactsform</vampi_contactsform>
                </modules>
            </args>
        </contactsform>
    </routers>
</frontend>    

和我的应用程序''代码''社区''吸血鬼''联系人表单''控制器''管理员html''联系人表单控制器.php包含

<?php
class Vampi_Contactsform_Adminhtml_ContactsformController extends Mage_Adminhtml_Controller_Action{
public function indexAction()
{
    $this->_title($this->__('Sales'))->_title($this->__('Contact Enquiries'));
    $this->loadLayout();
    $this->_setActiveMenu('report/contactsform');
    $this->_addContent($this->getLayout()->createBlock('vampi_contactsform/adminhtml_contactsform_list'));
    $this->renderLayout();
}
public function deleteAction() {
    $orderIds = $this->getRequest()->getPost('order_ids', array());
    $countNonCancelOrder = 0;
    foreach ($orderIds as $orderId) {
        $db = Mage::getSingleton('core/resource')->getConnection('core_write');
        $contact_form = Mage::getSingleton("core/resource")->getTableName('contact_form');
        $db->delete($contact_form, "id = $orderId");
        $countNonCancelOrder++;
    }
    if ($countNonCancelOrder) {
            $this->_getSession()->addError($this->__('%s enquiry(s) deleted', $countNonCancelOrder));
    }
    $this->_redirect('*/*/');
}
public function gridAction()
{
    $this->loadLayout();
    $this->getResponse()->setBody(
            $this->getLayout()->createBlock('vampi_contactsform/adminhtml_contactsform_list_grid')->toHtml()
    );
}
}

请帮忙

这在从Magento管理面板打开页面时给出404错误。

谢谢

控制器是根据管理会话生成的。而且您无法共享管理员和前端会话,这就是为什么从前端 404 进行调用时找不到的原因。

无论如何,从后端调用前端操作不是一个好的做法。您应该有 2 个单独的控制器,一个用于后端,一个用于前端。为了不重复代码,您可以将所有内容放在帮助程序的方法中,并在两个控制器中调用该方法。

不能在

盘子上给你一个现成的答案,但如果你遵循这篇文章,你应该很好。注意底部的调试部分。它应该可以帮助您找出问题所在。

对不起,伙计们,这是我命名控制器的愚蠢错误。我已将 contactsformController.php 重命名为 ContactsformController.php