【问题标题】:can not find the save action when magento submit a formmagento提交表单时找不到保存操作
【发布时间】:2014-06-10 21:14:59
【问题描述】:

我是 magento 的新手,我对 magento 如何处理表单感到困惑。 我正在使用 magento 提供的示例数据 在我的管理面板中,我进入目录,管理产品,并尝试弄清楚 magento 如何将这些表单数据保存到数据库中。假设我从 url 编辑了 id=881 的项目,当渲染页面时,他们使用app/design/adminhtml/default/default/template/catalog/product/edit.phtml for the template,,在这个文件中,有几行代码

<form action="<?php echo $this->getSaveUrl() ?>" method="post" id="product_edit_form" enctype="multipart/form-data">

    <?php echo $this->getBlockHtml('formkey')?>
    <div style="display:none"></div>
</form>

我试图找出指定哪个动作脚本来处理这个帖子表单,我将它回显到页面并得到类似 localhost/magento/index.php/admin/catalog_product/save/id/881/key/d092b22cecaae47664a8c9f9eea63a50/ 的内容,我认为 admin 是命名空间,catalog_product 是控制器的名称,并且保存应该是动作名称,我查找位于Mage_Catalog_controllers_ProductController.php 的文件,但找不到保存动作。

【问题讨论】:

    标签: php forms magento


    【解决方案1】:

    Admin 是你的模块名称,它应该给出你应该在哪里寻找控制器,

    如果你打开app\code\core\Mage\Adminhtml\etc\config.xml

    你会注意到的,

    #FIle :82
    <admin>
            <routers>
                <adminhtml>
                    <use>admin</use>
                    <args>
                        <module>Mage_Adminhtml</module>
                        <frontName>admin</frontName>
                    </args>
                </adminhtml>
            </routers>
        </admin>
    

    注意,&lt;frontName&gt;admin&lt;/frontName&gt;

    因此对于控制器的上述路径是,

    app\code\core\Mage\Adminhtml\controllers\Catalog\ProductController.php
    

    将在管理员中为您提供与产品相关的操作,同样您可以跟踪您的块、助手和模型。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-23
      • 2013-11-08
      • 1970-01-01
      • 1970-01-01
      • 2013-01-13
      • 1970-01-01
      相关资源
      最近更新 更多