0
我試圖覆蓋第三方擴展模型(「Userprofile」功能)的一部分,以包含更多的列和調用來檢索新的信息。這是第三方的config.xml:Magento第三方模型覆蓋
<models>
<marketplace>
<class>Webkul_Marketplace_Model</class>
<resourceModel>marketplace_mysql4</resourceModel>
</marketplace>
<marketplace_mysql4>
<class>Webkul_Marketplace_Model_Mysql4</class>
<entities>
<product>
<table>marketplace_product</table>
</product>
<userprofile>
<table>marketplace_userdata</table>
</userprofile>
<feedback>
<table>marketplace_datafeedback</table>
</feedback>
<saleperpartner>
<table>marketplace_saleperpartner</table>
</saleperpartner>
<saleslist>
<table>marketplace_saleslist</table>
</saleslist>
</entities>
</marketplace_mysql4>
</models>
這是我自己的config.xml:
<models>
<zerobars_marketplacepayment>
<class>ZeroBars_Marketplacepayment_Model</class>
</zerobars_marketplacepayment>
<marketplace>
<rewrite>
<userprofile>ZeroBars_Marketplacepayment_Model_Userprofile</userprofile>
</rewrite>
</marketplace>
<marketplace_mysql4>
<rewrite>
<userprofile>ZeroBars_Marketplacepayment_Model_Mysql4_Userprofile</userprofile>
<userprofile_collection>ZeroBars_Marketplacepayment_Model_Mysql4_Userprofile_Collection</userprofile_collection>
</rewrite>
</marketplace_mysql4>
</models>
我複製所有文件USERPROFILE到我的模型結構,正是因爲他們在原分機與我自己取代「市場」命名的除外:
<?php
class ZeroBars_Marketplacepayment_Model_Userprofile extends Mage_Core_Model_Abstract
{
public function _construct()
{
parent::_construct();
$this->_init('zerobars_marketplacepayment/userprofile');
}
public function getPartnerProfileById($partnerId) {
$data = array();
if ($partnerId != '') {
$collection = Mage::getModel('zerobars_marketplacepayment/userprofile')->getCollection();
$collection->addFieldToFilter('mageuserid',array('eq'=>$partnerId));
$user = Mage::getModel('customer/customer')->load($partnerId);
....
但是我仍然得到一個「致命錯誤:調用一個成員函數getCollection()在非OB ject in /home/devzerob/public_html/app/code/local/ZeroBars/Marketplacepayment/Model/Userprofile.php on line 14「
該錯誤源於PHP文件的$ collection行。我錯過了什麼?我需要在配置部分中進行任何重寫嗎?
它發生,我認爲我可能需要在此更加緊密地看後添加相應的線到我的配置。有沒有關於如何做的好文章? –
KRay
A
1
+0
+0
相關問題
-
1. Magento覆蓋模型
-
2. Magento模型覆蓋
-
3. Magento模型覆蓋
-
4. 覆蓋CakePHP模型中的第三方類方法
-
5. Magento規則模型覆蓋
-
6. Magento覆蓋模型Mage_Catalog_Model_Product_Attribute_Backend_Media
-
7. 覆蓋第三方ViewController的Autorotation屬性
-
8. 覆蓋DependencyInjection/configuration.php第三方包
-
9. 覆蓋Magento中的file_image模型
-
10. Magento的 - 模型覆蓋在本地codePool
-
11. Magento覆蓋現有源模型
-
12. magento無法覆蓋核心模型
-
13. 如何覆蓋Magento社區模型?
-
14. 通過覆蓋模型重寫Magento URL
-
15. Magento的覆蓋客戶資源模型
-
16. Magento - 模型覆蓋不起作用
-
17. yii2覆蓋模型方法
-
18. 如何覆蓋大型第三方API的一小部分?
-
19. 覆蓋/擴展第三方組件的模板
-
20. 通過擴展覆蓋django第三方應用程序模板
-
21. 覆蓋模型
-
22. Magento API第三方連接
-
23. Joomla!模型覆蓋
-
24. extjs模型覆蓋
-
25. Magento - 覆蓋塊
-
26. 覆蓋Customer_Block_Form_Login Magento
-
27. 覆蓋Magento Mage_Sales_Model_Order_Invoice_Total_Subtotal
-
28. Magento - 覆蓋「OnepageController.php」
-
29. Magento:覆蓋Mage_CatalogSearch_Model_Resource_Helper_Mysql4
-
30. 在Google Maps官方應用中覆蓋第三方數據?
最新問題
-
1. 爲什麼在Laravel中使用WHERE循環獲取數據?
-
2. 在python和matplotlib中動畫軸的大小和2個連續的動畫
-
3. 在節點全局範圍內使用await加載數據庫客戶端可能嗎?
-
4. MongoDB的 - 通過列表
-
5. 爲什麼此回調沒有訪問外部範圍的正確值?
-
6. 在controlTextDidChange方法中使用自定義NSFormatter訪問NSTextField的`stringValue`使其不可編輯。
-
7. Django管理list_display模型方法
-
8. 檢查文本框是否爲空
-
9. 該頁碼小於1 Django
-
10. 使用現有生產資源的Terraform
-
1. Magento覆蓋模型
-
2. Magento模型覆蓋
-
3. Magento模型覆蓋
-
4. 覆蓋CakePHP模型中的第三方類方法
-
5. Magento規則模型覆蓋
-
6. Magento覆蓋模型Mage_Catalog_Model_Product_Attribute_Backend_Media
-
7. 覆蓋第三方ViewController的Autorotation屬性
-
8. 覆蓋DependencyInjection/configuration.php第三方包
-
9. 覆蓋Magento中的file_image模型
-
10. Magento的 - 模型覆蓋在本地codePool
回答
在您打算重寫自定義模型擴展的模型文件中存在一些問題。我會注意到你現在看到的主要問題是什麼。
模型擴展錯誤的類
你的模型類現在繼承類
Mage_Core_Model_Abstract
,而你的情況是錯誤的,你需要擴展Webkul_Marketplace_Model_Userprofile
。這是因爲你正在覆蓋這門課。所以自定義類應該從這個類本身繼承是至關重要的。引用到一個錯誤的模型
現在模型集合由此代碼片段
這告訴給Magento的那個進行,哎Magento的我需要的所有數據收集從模型
ZeroBars_Marketplacepayment_Model_Userprofile
。這個方法肯定會引發一個錯誤,因爲這個模型引用了你的模塊,並且不包含任何集合,資源(我假設如此)。所以,你可能會需要使用現在收集是指
Webkul_Marketplace_Model_Userprofile
它確實有一個集合,資源定義。我也希望mageuserid
是由這個模塊本身定義的。你可以做什麼?
在你的問題,你提到的是,你需要一些額外的列字段添加到自定義表。爲此,您需要使用一些升級腳本。這裏給出一些參考文獻1,2。你可能會在那裏獲得更多的教程。
感謝
來源
2014-06-24 02:28:00
非常感謝你programmer_rkt!我確實編寫了一個工作正常的升級腳本,以便部分得到照顧。我缺少的重要部分是「擴展擴展」部分。現在一切都很好,我欠你一杯虛擬咖啡或什麼。 :-) – KRay
接受你的咖啡! –
相關問題