2012-12-04 196 views
0

這是幾天來一直困擾我的事情,我越來越沮喪地尋找幫助/解決方案 - 所以值得信賴的StackOverflow!Magento自定義模塊 - 保存產品

我已經在Magento 1.7(包含一些東西,如標題,內容)基本上自定義靜態塊自定義數據庫模塊。我已經實施了產品選擇器here

雖然 - 這只是實際的產品選擇 - 沒有保存功能!

我很困擾如何保存所選的magento產品 - 什麼是正確的/最好的方式?

爲簡單起見,我認爲用逗號分隔ID/SKU - 還是應該創建一個新的實體類型?任何關於後者的知識/指導都會非常有幫助 - 特別是保存新實體類型的產品。

保存產品的代碼是否在<Module>/controllers/Adminhtml/<Module>Controller.php -> saveAction()或其他地方?

回答

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

更多@Custom Module with Custom Database Table