我是magento的新手,我对magento处理形式感到困惑。
我正在使用magento提供的样本数据
在我的管理面板中,我转到目录,管理产品,并试图弄清楚magento如何将这些表单数据保存到数据库。假设我编辑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是namesapce,catalog_product是控制器的名称,并且保存应该是操作名称,我查找位于Mage_Catalog_controllers_ProductController.php
的文件,我找不到保存操作。
答案 0 :(得分:0)
管理员是您的模块名称,它应该提供您应该在哪里寻找控制器,
如果您打开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>
注意,<frontName>admin</frontName>
因此对于控制器的上述路径是
app\code\core\Mage\Adminhtml\controllers\Catalog\ProductController.php
将为您提供与管理中的产品相关的操作,同样可以跟踪您的块,帮助程序和模型。