2011-02-28 90 views
0

你好我試圖重寫或核心延長所有數據庫更新SQL的文件當地沒有成功,到現在爲止我有:重寫SQL模塊

CORE:

+core 
+Mage 
    +Mymodule 
    +... 
    +etc 
    -config.xml 
    +sql 
    +mymodule_setup 
    -mysql4-install-0.1.0.php 
    -mysql4-install-0.1.0-0.1.1.php 
    -... 

本地:

+local 
+Mage 
    +Mynamespace 
    +Mymodule 
    +... 
    +etc 
    -config.xml 
    +sql 
    +mymodule_setup 
     -mysql4-install-0.1.0.php 
     -mysql4-install-0.1.0-0.1.1.php 
     -... 

所以我的問題是升級的Magento時,爲了避免問題我如何展示配置config.xml文件中核心當地,改寫型號,我沒有成功,但不適用於SQL,到現在爲止我:提前任何幫助

LOCAL

<?xml version="1.0"?> 
<config> 
    <modules> 
     <Mage_Mymodule> 
      <version>0.1.1</version> 
     </Mage_Mymodule> 
    </modules> 
    <global> 
     <resources> 
      <mynamespace_mymodule_setup> 
       <setup> 
        <module>Mynamespace_Mymodule</module> 
        <class>Mage_Mymodule_Model_Resource_Eav_Mysql4_Setup</class> 
       </setup> 
       <connection> 
        <use>core_setup</use> 
       </connection> 
      </mynamespace_mymodule_setup> 
     </resources> 
     <models> 
      <Mymodule> 
       <rewrite> 
        <abc>Mynamespace_Mymodule_Model_Abc</abc> 
       </rewrite> 
      </Mymodule> 
     </models> 
    </global> 
</config> 

感謝。

+0

我不明白它改寫,你爲什麼要用'local/Mage/Mynamespace/Mymodule /'?當然'法師'部分是多餘的。 – clockworkgeek 2011-03-01 15:43:13

回答

1

無法覆蓋安裝/更新腳本。 你必須: 1.設置你的模塊的依賴關係,它必須安裝在最後。 2.在你的安裝腳本中,你可以使用任何東西。 你最好使用Varien_Db_Adapter_Pdo_Mysql方法。

0

我認爲問題在於您已將資源設置中的類更改爲可能不存在的類。請嘗試:

<setup> 
    <module>Mynamespace_Mymodule</module> 
    <class>Mage_Catalog_Model_Resource_Eav_Mysql4_Setup</class> 
</setup> 
0

你可以做一些黑客,就像你設置類覆蓋保護的方法_getAvailableDbFiles和使用目錄名(FILE),而不是法師:: getModuleDir(Mage_Core_Model_Resource_Setup〜480)