Frage

Ist es angemessen, wenn die Struktur der Struktur der Ordnerstruktur der Setup -Ressourcen wie unten aufrechterhalten wird?

MyModule > Helper
           sql    > mymodule_customer_setup
                  > mymodule_directory_setup
                  > mymodule_setup

Wenn die obige Struktur in Ordnung ist, wie soll ich dann in der config.xml definieren? Ich denke, wie unten zu definieren:

<resources>
    <mymodule_customer_setup>
        <setup>
            <module>Package_MyModule</module>
        </setup>
    </mymodule_customer_setup>
    <mymodule_directory_setup>
        <setup>
            <module>Package_MyModule</module>
        </setup>
    </mymodule_directory_setup>
    <mymodule_setup>
        <setup>
            <module>Package_MyModule</module>
        </setup>
    </mymodule_setup>
</resources>
War es hilfreich?

Lösung

Lassen Sie uns also durchlaufen, was hier tatsächlich passiert.

Installieren Sie Skripte für alle.

Ich habe Update -Skripte für alle drei Ressourcen und dann in der erstellt core_resource Tabelle Sie erhalten die folgenden Informationen.

+--------------------------+---------+--------------+
| code                     | version | data_version |
+--------------------------+---------+--------------+
| mymodule_customer_setup  | 0.7.0   | 0.7.0        |
| mymodule_directory_setup | 0.7.0   | 0.7.0        |
| mymodule_setup           | 0.7.0   | 0.7.0        |
+--------------------------+---------+--------------+

Updates für ein Skript

Ich aktualisiere dann die Versions -ID der Konfiguration, füge jedoch nur ein Update -Skript hinzu.

+--------------------------+---------+--------------+
| code                     | version | data_version |
+--------------------------+---------+--------------+
| mymodule_customer_setup  | 0.7.1   | 0.7.1        |
| mymodule_directory_setup | 0.7.1   | 0.7.1        |
| mymodule_setup           | 0.7.1   | 0.7.1        |
+--------------------------+---------+--------------+

So traurig wie erwartet werden alle Ressourcen gleichzeitig auch mit nur dem einen Skript aktualisiert :(

Technisch gesehen ist an diesem Ansatz nichts falsch, ich habe ihn getestet und jedes Skript wird aufgerufen, aber alle Versionsnummern werden gleichzeitig aktualisiert. Es mag ein bisschen seltsam aussehen, wenn Sie "fehlende" Skripte in Ihren Verzeichnissen haben, aber Sie könnten dort immer leere Skripte einstellen, die einfach starten und beenden, um die Reihenfolge zu behalten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top