Hallo zusammen,
ich bin ein kompletter Oxid-neuling und stehe vor der Aufgabe, ein Modul zum Datenexport von Kategorien und Produkten zu entwickeln.
Das Modul soll einerseits einen Komplett-Export aller Kategorien/Produkten erstellen können, andererseits aber auch inkrementelle Updates erzeugen.
Ich habe nun durch diverse Tutorials und Posts verstanden (hoffe ich), dass Oxid kein Event-Hanling-Mechanismus anbietet, der mich z.B. über Update-Vorgänge im Datenbestand unterrichtet. Nun war mein erster Gedanke, einfach die entsprechenden Speicher-Methoden (z.B. oxArticle::save()) der zugehöärigen Model-Klassen (t.B. oxArticle) zu überschreiben, damit ich - sobald ein Artikel aktualisiert wurde - dessen Daten an die Empfänger-Stelle weiterleiten kann.
Mir ist nur nicht ganz klar, wie das Oxid-Vererbungsmodell konkret arbeitet. Wenn der Shop z.B. noch ein weiteres Modul verwendet, welches ebenfalls die oxArticle-Klasse erweitert und dabei evtl. auch dieselben Methoden überschreibt, welcher Code wird dann konkret ausgeführt?
Meiner? Code vom anderen Modul? Beides? immer das vom zuletzt installierten Model? Oder kann ich das irgendwie steuern (vgl. final class oder important! in css)?
Für Hinweise zum sinnvollen Vorgehen bedanke ich mich schon mal im Voraus.
Marco
ich bin ein kompletter Oxid-neuling und stehe vor der Aufgabe, ein Modul zum Datenexport von Kategorien und Produkten zu entwickeln.
Das Modul soll einerseits einen Komplett-Export aller Kategorien/Produkten erstellen können, andererseits aber auch inkrementelle Updates erzeugen.
Ich habe nun durch diverse Tutorials und Posts verstanden (hoffe ich), dass Oxid kein Event-Hanling-Mechanismus anbietet, der mich z.B. über Update-Vorgänge im Datenbestand unterrichtet. Nun war mein erster Gedanke, einfach die entsprechenden Speicher-Methoden (z.B. oxArticle::save()) der zugehöärigen Model-Klassen (t.B. oxArticle) zu überschreiben, damit ich - sobald ein Artikel aktualisiert wurde - dessen Daten an die Empfänger-Stelle weiterleiten kann.
Mir ist nur nicht ganz klar, wie das Oxid-Vererbungsmodell konkret arbeitet. Wenn der Shop z.B. noch ein weiteres Modul verwendet, welches ebenfalls die oxArticle-Klasse erweitert und dabei evtl. auch dieselben Methoden überschreibt, welcher Code wird dann konkret ausgeführt?
Meiner? Code vom anderen Modul? Beides? immer das vom zuletzt installierten Model? Oder kann ich das irgendwie steuern (vgl. final class oder important! in css)?
Für Hinweise zum sinnvollen Vorgehen bedanke ich mich schon mal im Voraus.
Marco