2013-04-09 5 views
7

Ich versuche, die Mage_Review_Model_Resource_Review_Summary_Collection neu zu schreiben. Das Modul ist aktiviert. Die folde Struktur ist die gleiche wie in der Kernüberprüfung.Magento Neuschreiben Core Model Resource Collection

Das Problem sollte in der XML sein.

Mein xml ist:

<?xml version="1.0"?> 
<config> 
<modules> 
    <LM_Review> 
     <version>0.1.0</version> 
    </LM_Review> 
</modules> 

<frontend> 
    <routers> 
     <review> 
      <args> 
       <modules> 
        <lm_review before="Mage_Review">LM_Review</lm_review> 
       </modules> 
      </args> 
     </review> 
    </routers> 

    <layout> 
     <updates> 
      <lm_review> 
       <file>lm/review.xml</file> 
      </lm_review> 
     </updates> 
    </layout> 

    <translate> 
     <modules> 
      <LM_Review> 
       <files> 
        <default>LM_Review.csv</default> 
       </files> 
      </LM_Review> 
     </modules> 
    </translate> 
</frontend> 

<global> 
    <models> 
     <review_resource> 
      <rewrite> 
       <review_summary_collection>LM_Review_Model_Resource_Review_Summary_Collection</review_summary_collection> 
      </rewrite> 
     </review_resource> 
    </models> 
</global> 
</config> 

LM_All.xml in etc/modules

<LM_Review> 
      <active>true</active> 
      <codePool>local</codePool> 
      <depends> 
       <Mage_Review /> 
      </depends> 
</LM_Review> 

Die Collection.php in app/code/local/LM/Review/Model/Ressourcen/Review/Zusammenfassung/Collection.php

class LM_Review_Model_Resource_Review_Summary_Collection extends Mage_Review_Model_Resource_Review_Summary_Collection { 

    public function addStoreFilter($storeId) { 
     die('test'); 
    } 

} 
+0

Mit welcher Art von Problem sind Sie konfrontiert? –

+0

Das Neuschreiben funktioniert nicht. Ich bin nicht in der Lage, die Kern-Klasse mit diesem xml zu erweitern – exe

Antwort

3

Ich habe das Problem gefunden. Es ist erforderlich, das Ressourcenmodell dem XML hinzuzufügen und nicht nur neu zu schreiben.

<global> 
    <models> 
     <review> 
      <resourceModel>review_resource</resourceModel> 
     </review> 
     <review_resource> 
      <rewrite> 
       <review_summary_collection>LM_Review_Model_Resource_Review_Summary_Collection</review_summary_collection> 
      </rewrite> 
     </review_resource> 
    </models> 
</global> 
+0

Funktioniert gut. Toll – Nandakumar

+0

Ich sehe nicht, warum dies erforderlich sein sollte. In meinem speziellen Fall hatte ich einen Tippfehler in etc/config.xml, so dass die XML nicht mehr gültig war – Phil

5

Ihr XML ist korrekt. Mit dem obigen XML vorhanden, wenn Sie die Factory-Methode Anruf

Mage::getResourceModel('review/review_summary_collection') 

Magento wird versuchen, eine instanziiert

LM_Review_Model_Resource_Review_Summary_Collection 

Das heißt

  1. Magento nicht sehen können Ihr Modul (keine Datei oder Datei ist inaktiv, oder Datei verweist auf den falschen Code-Pool)

  2. Sie keine Datei an LM/Review/Model/Resource/Review/Summary/Collection.php in Ihrem Code Pool haben

  3. Die Klasse in Collection.php definiert ist nicht LM_Review_Model_Resource_Review_Summary_Collection

  4. Die in Collection.php definierten Klasse nicht Mage_Review_Model_Resource_Review_Summary_Collection

  5. die Rechtschreibprüfung erstreckt und Groß-/Kleinschreibung Ihrer Klassen- und Pfadnamen. Das ist wichtig für Magento.

+0

Vielen Dank für Ihren Kommentar. Ich habe die Rechtschreibung und solche Dinge überprüft. Die Moule ist aktiv. Es gibt auch einen Controller in dem Modul, der arbeitet. Ich baue auch die gleiche Ordner-Struktur und die Erweiterung der Kern-Klasse. Es ist nicht mein erstes Modell-Neuschreiben, aber meine erste Ressource-Modell-Neufassung und ich sehe nicht, was ist los damit. Ich habe auch Firegento installiert, das auch sagt, dass etwas mit dem Neuschreiben falsch ist, aber keine Details. – exe

+1

@exe 'echo get_class (Mage :: getResourceModel ('review/review_summary_collection'));' wer weiß, dass es von anderen Modulen überschrieben wurde – ivantedja

+0

Bereits getestet -> Mage_Review_Model_Resource_Review_Summary_Collection ist nicht überschrieben meine etwas anderes. Auch der 1. Post mit mehr Infos aktualisiert – exe

Verwandte Themen