【问题标题】:Magento custom module - saving productsMagento 自定义模块 - 节省产品
【发布时间】:2012-12-04 12:08:57
【问题描述】:

这几天来一直困扰着我,我对寻找帮助/解决方案感到非常沮丧 - StackOverflow 太值得信赖了!

我在 Magento 1.7 中使用自定义数据库制作了一个自定义模块(包含标题、内容等一些内容),基本上是一个自定义静态块。我已经实现了可用的产品选择器here

虽然 - 这只是实际的产品选择 - 没有保存功能!

我非常纠结于如何保存选定的 magento 产品 - 正确/最好的方法是什么?

为了简单起见,我认为用逗号分隔 ID/SKU - 还是应该创建一个新的实体类型?关于后者的任何知识/指导都会非常有帮助 - 特别是保存新实体类型的产品。

保存产品的代码会放在<Module>/controllers/Adminhtml/<Module>Controller.php -> saveAction() 还是其他地方?

【问题讨论】:

    标签: magento magento-1.7


    【解决方案1】:

    <Module>/controllers/Adminhtml/<Module>Controller.php

    public function saveAction()
    {
        if ( $this->getRequest()->getPost() ) {
            try {
                $postData = $this->getRequest()->getPost();
    
    
                Mage::getModel('productsselector/productsselector')->setId($this->getRequest()->getParam('id'))
                    ->setProductSku($postData['product_sku'])
                    ...
                    ->save();
    
    
    
                Mage::getSingleton('adminhtml/session')->addSuccess(Mage::helper('adminhtml')->__('Item was successfully saved'));
                Mage::getSingleton('adminhtml/session')->setProductsselectorData(false);
    
                $this->_redirect('*/*/');
                return;
            } catch (Exception $e) {
                Mage::getSingleton('adminhtml/session')->addError($e->getMessage());
                Mage::getSingleton('adminhtml/session')->setLocalshipData($this->getRequest()->getPost());
                $this->_redirect('*/*/edit', array('id' => $this->getRequest()->getParam('id')));
                return;
            }
        }
        $this->_redirect('*/*/');
    }
    

    阅读更多@Custom Module with Custom Database Table

    【讨论】:

      猜你喜欢
      • 2011-03-28
      • 2023-03-21
      • 2012-02-02
      • 2011-04-14
      • 2011-07-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-13
      相关资源
      最近更新 更多