Php Magento-管理网格页面主字段加倍
我正在开发一个自定义Magento(1.9.0.1版本)扩展 让我用图片描述一下我的问题: 单击按钮进入下一页时: 然后出现此问题:Php Magento-管理网格页面主字段加倍,php,magento,adminhtml,Php,Magento,Adminhtml,我正在开发一个自定义Magento(1.9.0.1版本)扩展 让我用图片描述一下我的问题: 单击按钮进入下一页时: 然后出现此问题: 正如你可以看到的那样,无论是什么原因,MaGeto字段都指向图片,而 Load 块在中间不会消失。 让我向您展示我的整个配置文件: <?xml version="1.0"?> <config> <modules> <VivasIndustries_SmsNotification> <
正如你可以看到的那样,无论是什么原因,MaGeto字段都指向图片,而
<?xml version="1.0"?>
<config>
<modules>
<VivasIndustries_SmsNotification>
<version>1.0.0</version>
</VivasIndustries_SmsNotification>
</modules>
<global>
<models>
<smsnotification>
<class>VivasIndustries_SmsNotification_Model</class>
<resourceModel>vivasindustries_smsnotification_resource</resourceModel>
</smsnotification>
<vivasindustries_smsnotification_resource>
<class>VivasIndustries_SmsNotification_Model_Resource</class>
<entities>
<smsnotification>
<table>VivasIndustries_SmsNotification</table>
</smsnotification>
<smsnotificationhistory>
<table>VivasIndustries_SmsHistory</table>
</smsnotificationhistory>
</entities>
</vivasindustries_smsnotification_resource>
</models>
<resources>
<smsnotification_setup>
<setup>
<module>VivasIndustries_SmsNotification</module>
</setup>
<connection>
<use>core_setup</use>
</connection>
</smsnotification_setup>
<smsnotification_read>
<connection>
<use>core_read</use>
</connection>
</smsnotification_read>
<smsnotification_write>
<connection>
<use>core_write</use>
</connection>
</smsnotification_write>
</resources>
<events>
<sales_order_save_after>
<observers>
<vivasindustries_smsnotification>
<class>smsnotification/observer</class>
<method>orderSaved</method>
</vivasindustries_smsnotification>
</observers>
</sales_order_save_after>
</events>
<helpers>
<smsnotification>
<class>VivasIndustries_SmsNotification_Helper</class>
</smsnotification>
</helpers>
<blocks>
<smsnotification>
<class>VivasIndustries_SmsNotification_Block</class>
</smsnotification>
</blocks>
</global>
<adminhtml>
<acl>
<resources>
<all>
<title>Allow Everything</title>
</all>
<admin>
<children>
<system>
<children>
<config>
<children>
<vivas>
<title>Vivas - All</title>
</vivas>
</children>
</config>
</children>
</system>
</children>
</admin>
</resources>
</acl>
<layout>
<updates>
<smsnotification>
<file>smsnotification.xml</file>
</smsnotification>
</updates>
</layout>
</adminhtml>
<admin>
<routers>
<adminhtml>
<args>
<modules>
<VivasIndustries_SmsNotification before="Mage_Adminhtml">VivasIndustries_SmsNotification_Adminhtml</VivasIndustries_SmsNotification>
</modules>
</args>
</adminhtml>
</routers>
</admin>
</config>
1.0.0
VivasiIndustries\u SmsNotification\u模型
活力工业资源
VivasiIndustries\u SmsNotification\u Model\u资源
活力工业
活工业
活力工业
核心单元设置
核心读取
核心写入
smsnotification/观察员
订单保存
VivasiIndustries\u SmsNotification\u助手
VivasiIndustries\u SmsNotification\u Block
允许一切
万岁
smsnotification.xml
VivasiIndustries\u SmsNotification\u Adminhtml
以下是创建网格表的文件:
<?php
class VivasIndustries_SmsNotification_Block_Adminhtml_Sms_History extends Mage_Adminhtml_Block_Widget_Grid_Container
{
public function __construct()
{
$this->_controller = 'adminhtml_sms_history';
$this->_blockGroup = 'smsnotification';
$this->_headerText = Mage::helper('smsnotification')->__('SMS History');
parent::__construct();
$this->_removeButton('add');
}
}
当您使用方法setUseAjax
时,Magento将尝试通过ajax在页面中仅重新加载网格
因此,要使其正常工作,您必须向Magento指定他需要获取的URL以获得网格,并且只有网格通过ajax刷新网格,否则它将错误地假设它必须使用当前页面URL刷新网格,因此在div中第二次添加管理员的头,假定该头只包含网格。就像你的截图
还有一条路要走:
在VivasiIndustries\u SmsNotification\u Block\u administration\u Sms\u History\u Grid
中添加此功能:
public function getGridUrl()
{
return $this->getUrl('*/*/smsGrid', array('_current'=>true));
}
因此,您还必须将此操作添加到VivasiIndustries\u SmsNotification\u Adminhtml
的控制器中,并使用网格渲染块,仅此块。
就像这样:
public function smsGridAction()
{
$this->getResponse()
->setBody($this->getLayout()
->createBlock('smsnotification/adminhtml_sms_history_grid')
->toHtml()
);
}
你应该可以走了
public function smsGridAction()
{
$this->getResponse()
->setBody($this->getLayout()
->createBlock('smsnotification/adminhtml_sms_history_grid')
->toHtml()
);
}