0

这是我几天来一直挑战的事情,我对寻找帮助/解决方案感到相当沮丧——它是如此值得信赖的 StackOverflow!

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

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

我非常坚持如何保存选定的magento产品-正确/最佳方法是什么?

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

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

4

1 回答 1

0

<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('*/*/');
}

阅读更多@带有自定义数据库表的自定义模块

于 2012-12-04T13:03:55.113 回答