在 magento enterprise 1.9.0.0 中创建高级配置文件时出现问题

发布于 2024-10-03 20:30:54 字数 1179 浏览 2 评论 0原文

测试在 Magento Enterprise 版本 1.9.0.0 中进行 第一个问题 当我尝试在管理中的高级配置文件下创建新配置文件并尝试保存它时,出现以下错误:

Fatal error: Call to undefined method Mage_Adminhtml_Block_Widget::getrowurl() in D:\wamp\www\ent\app\code\core\Mage\Adminhtml\Block\Widget\Grid.php on line 1583

当我开始深入研究代码并到达 app\code\core\Mage\Adminhtml\Block\Widget\Grid 时.php 第 1 行1583,我发现了以下代码块(绿色):

class Mage_Adminhtml_Block_Widget_Grid extends Mage_Adminhtml_Block_Widget {

    public function getRowUrl($item)
    {
        $res = parent::getRowUrl($item);
        return ($res ? $res : '#');
    }
}

如果您在代码中看到 $res = Parent::getRowUrl($item); ,它指示运行 getRowUrl() 函数来自其父类,即 Mage_Adminhtml_Block_Widget。现在,当我在小部件类中搜索 getRowUrl 函数时,它在那里不可用,甚至在 Mage_Adminhtml_Block_Widget 的父类中也不可用。

我也尝试通过注释 getRowUrl() 函数编写的代码来调试,但它不起作用。

第二个问题: 当我运行正常配置文件来导入所有产品时,我看到以下错误

Fatal error: Call to undefined method Mage_Adminhtml_Block_Abstract::getexceptions() in D:\wamp\www\ent\app\code\core\Mage\Adminhtml\Block\System\Convert\Profile\Run.php on line 166

所有我在新的企业版本 1.9.0.0 中测试了此错误,而没有安装任何扩展。

Test conducted in Magento Enterprise version 1.9.0.0
First Problem
When I try to create new profile under Advanced profile in admin and try to save it, I get following error:

Fatal error: Call to undefined method Mage_Adminhtml_Block_Widget::getrowurl() in D:\wamp\www\ent\app\code\core\Mage\Adminhtml\Block\Widget\Grid.php on line 1583

As I started to drill down into the code and reach to app\code\core\Mage\Adminhtml\Block\Widget\Grid.php in line no. 1583, I have found following chunk of code (green color):

class Mage_Adminhtml_Block_Widget_Grid extends Mage_Adminhtml_Block_Widget {

    public function getRowUrl($item)
    {
        $res = parent::getRowUrl($item);
        return ($res ? $res : '#');
    }
}

If you see $res = parent::getRowUrl($item); In the code, it instruct to run getRowUrl() function from its parent class i.e. Mage_Adminhtml_Block_Widget. Now when I search getRowUrl function in the widget class, it is not available there, even not in the parent class of Mage_Adminhtml_Block_Widget.

I also tried to debug by commenting the code written getRowUrl() function, but it doesn’t work.

Second problem:
When I run normal profile to import all product, I see following error

Fatal error: Call to undefined method Mage_Adminhtml_Block_Abstract::getexceptions() in D:\wamp\www\ent\app\code\core\Mage\Adminhtml\Block\System\Convert\Profile\Run.php on line 166

All I tested this in fresh enterprise version 1.9.0.0 without installing any extensions.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

恏ㄋ傷疤忘ㄋ疼 2024-10-10 20:30:54

听起来你发现了一个错误。如果您有企业版,那么我建议您使用支持协议并联系 Magento Inc.。一旦他们帮助您解决问题,请发布修复内容。

Sounds like you found a bug. If you have Enterprise Edition, then I recommend that you use the support agreement and contact Magento Inc. Please post what the fix is once they help you out.

蓝戈者 2024-10-10 20:30:54

我对此没有遇到任何问题,但我确实在高级配置文件中发现了另一个错误,其中布局从未加载。我确实与 Magento 确认了这一点,他们也意识到了这个错误。在 app/design/adminhtml/default/default/layout/dataflow.xml

您需要添加以下内容,否则您会得到一个空白的管理屏幕。

 <adminhtml_system_convert_profile_run>
    <remove name="root"/>
    <block type="adminhtml/page" name="convert_root" output="toHtml" template="page.phtml">
        <block type="adminhtml/page_head" name="convert_root_head" as="head" template="page/head.phtml">
            <action method="addJs"><script>prototype/prototype.js</script></action>
            <action method="addJs"><script>prototype/validation.js</script></action>
            <action method="addJs"><script>varien/js.js</script></action>
            <action method="addJs"><script>mage/translate.js</script></action>
            <action method="addJs"><script>mage/adminhtml/tools.js</script></action>
        </block>
        <block type="adminhtml/system_convert_profile_run" name="system_convert_profile_run" template="system/convert/profile/process.phtml" output="toHtml"/>
    </block>
</adminhtml_system_convert_profile_run>

至于您的错误,我不认为这是一个错误,因为我们在 1.9 安装中没有遇到任何问题。我确实明白你所说的它不在父级中,但是调用网格类中的方法的唯一方法是一个已弃用的方法 getRowId,除了 grid.phtml 文件之外,我没有看到任何其他调用它的方法用于仪表板上。

I haven't had a problem with that, but I did discover another bug in the advanced profile in which the layout is never loaded. I did confirm this with Magento and they are aware of the bug. in app/design/adminhtml/default/default/layout/dataflow.xml

You need to add the following otherwise you get a blank admin screen.

 <adminhtml_system_convert_profile_run>
    <remove name="root"/>
    <block type="adminhtml/page" name="convert_root" output="toHtml" template="page.phtml">
        <block type="adminhtml/page_head" name="convert_root_head" as="head" template="page/head.phtml">
            <action method="addJs"><script>prototype/prototype.js</script></action>
            <action method="addJs"><script>prototype/validation.js</script></action>
            <action method="addJs"><script>varien/js.js</script></action>
            <action method="addJs"><script>mage/translate.js</script></action>
            <action method="addJs"><script>mage/adminhtml/tools.js</script></action>
        </block>
        <block type="adminhtml/system_convert_profile_run" name="system_convert_profile_run" template="system/convert/profile/process.phtml" output="toHtml"/>
    </block>
</adminhtml_system_convert_profile_run>

As for your errors, I don't think this is a bug, since we haven't had a problem on any of our 1.9 installs. I do see what you are talking about it not being in the parent, but the only thing that calls the method inside the grid class is a deprecated method getRowId, which I don't see anything else calling it besides a grid.phtml file that is used on the dashboard.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文