2013-08-31 52 views
0

如何在訂單控制器Magento後端獲得sales_quote模型?我需要獲得訂單控制器中的報價詳細信息,所以我使用下面的代碼。在sales/ordercontroller中獲得sales_quote模型magento後端

$quote= Mage::getModel('sales/quote')->load($quoteid); 

上面的查詢返回空數據。這是低於

Mage_Sales_Model_Quote Object 
(
    [_eventPrefix:protected] => sales_quote 
    [_eventObject:protected] => quote 
    [_customer:protected] => 
    [_addresses:protected] => 
    [_items:protected] => 
    [_payments:protected] => 
    [_errorInfoGroups:protected] => Array 
     (
     ) 

    [_preventSaving:protected] => 
    [_resourceName:protected] => sales/quote 
    [_resource:protected] => 
    [_resourceCollectionName:protected] => sales/quote_collection 
    [_cacheTag:protected] => 
    [_dataSaveAllowed:protected] => 1 
    [_isObjectNew:protected] => 
    [_data:protected] => Array 
     (
     ) 

    [_hasDataChanges:protected] => 
    [_origData:protected] => 
    [_idFieldName:protected] => 
    [_isDeleted:protected] => 
    [_oldFieldsMap:protected] => Array 
     (
     ) 

    [_syncFieldsMap:protected] => Array 
     (
     ) 

) 

有什麼辦法得到報價?

+2

這個問題似乎是題外話,因爲它是關於一個特定軟件產品的使用問題,在這裏即Magento的。 Magento Q&A網站似乎更適合這一點。 – hakre

+0

只是一個小問題:你爲什麼認爲你使用的代碼應該這樣做? – hakre

回答

4

我有同樣的問題。通過代碼尋找過了一會兒,我遇到了這個功能:

Mage_Sales_Model_Quote::loadByIdWithoutStore() 

我想經常Mage_Sales_Model_Quote::load()功能可自動將當前storeview加載引用對象。在這種情況下,storeview是admin,這意味着沒有結果將被發現的報價id和返回的對象是空的。

在你的情況,這應該按預期工作:

$quote= Mage::getModel('sales/quote')->loadByIdWithoutStore($quoteid); 
+0

是的!非常感謝!你剛剛救了我幾個小時。 –

0

我想,你的報價ID丟失,加載模型前檢查, 試試這個代碼

​​
+0

引用id不missing.And這個問題是不是結帳頁面(前端)。我需要解決方案的後端(訂單控制器查看頁面) – Deepa

+0

我有同樣的問題,你現在面臨的,檢查代碼與一些不同的報價ID手動 – sudhakar

+0

你也嘗試過使用手動報價ID。這個問題沒有解決。 – Deepa