Heim >Backend-Entwicklung >PHP-Tutorial >Magento Installation und Upgrade Datenskripte erläutert
Installations- und Upgrade -Skripte in der Magento -Modulentwicklung: Stellen Sie sicher, dass die Datenbank korrekt ist
Magento -Installations- und Upgrade -Skripte sind eine Schlüsselkomponente der Modulentwicklung, insbesondere für Module, die mit Datenbanken interagieren. Diese Skripte werden ausgeführt, wenn Sie auf eine bestimmte URL zugreifen und sich im Codeverzeichnis des Moduls befinden. In diesem Artikel wird in der Art und Weise eingetaucht, wie man zuverlässige Magento -Installation schreibt und Skripte aktualisiert, um allgemeine Namenskonventionen, Versionsnummern oder Syntaxfehler zu vermeiden.
Voraussetzung: Vor dem Lesen dieses Artikels wird empfohlen, Grundkenntnisse über die Entwicklung von Magento -Modul zu haben. Wenn Sie ein neues Modul installieren oder erstellen, das mit der Datenbank interagiert, finden Sie Installations- und Aktualisierungsskripte im Codeverzeichnis des Moduls, das beim Zugriff auf die URL ausgeführt wird. Die Kernmodule von Magento folgen ebenfalls der gleichen Installations- und Upgrade -Struktur.
Installationsskript:
Um das Installationsskript auszuführen, müssen wir ein benutzerdefiniertes Modul erstellen (in diesem Artikel wird davon ausgegangen, dass Sie ein benutzerdefiniertes Modul mit dem Namen Sitepoint_Articles
erstellt haben, um alle schriftlichen Artikel in der Datenbank aufzuzeichnen). Zu den grundlegenden Komponenten eines Moduls gehören: Blöcke, Modelle, Ressourcenmodelle, Controller, etc
Verzeichnisse (einschließlich modulbezogener Konfigurationen), Hilfsklassen und sql
Verzeichnisse (einschließlich Datenbank-Upgrade und Installationsskripte).
Modulverzeichnisstruktur ist wie folgt:
<code>app --code ---local ----Sitepoint ------Articles --------Block --------controllers --------etc --------Model --------sql</code>
Öffnen Sie die Datei app/code/local/Sitepoint/Articles/etc
im Verzeichnis config.xml
. Wir müssen eine Konfiguration in Bezug auf den Speicherort des Installationsskripts in dieser Datei hinzufügen. Fügen Sie die folgenden Untermeter unter das <global></global>
-Tag:
<code class="language-xml"><global> <models> <sitepoint_articles> <class>Sitepoint_Articles_Model</class> <resourcemodel>articles_mysql4</resourcemodel> </sitepoint_articles> <sitepoint_articles_mysql4> <class>Sitepoint_Articles_Model_Mysql4</class> <entities> <articles> <table>articles</table> </articles> </entities> </sitepoint_articles_mysql4> </models> <resources> <setup> <module>Sitepoint_Articles</module> </setup> <connection> <use>core_setup</use> </connection> <connection> <use>core_write</use> </connection> <connection> <use>core_read</use> </connection> </resources> </global></code>
Das <resources></resources>
-Tag unter dem Tag <setup></setup>
articles_setup
gibt Magento an, dass sich unsere Datei für Datenbankeinstellungen im Verzeichnis
Articles/sql/articles_setup
Erstellen Sie das Installationsskript im Verzeichnis mysql4-install-0.1.0.php
<code class="language-php"><?php $installer = $this; $installer->startSetup(); $table = $installer->getConnection()->newTable($installer->getTable('articles')) ->addColumn('articles_id', Varien_Db_Ddl_Table::TYPE_INTEGER, 11, array( 'unsigned' => true, 'nullable' => false, 'primary' => true, 'identity' => true, ), 'Article ID') // ... 其他列定义 ... ->setComment('Articles table'); $installer->getConnection()->createTable($table); $installer->endSetup(); ?></code>
Die Versionsnummer config.xml
(0.1.0) entspricht der in der config.xml
-Fatei definierten Versionsnummer. In
<code class="language-xml"><sitepoint_articles> <version>0.1.0</version> </sitepoint_articles></code>
core_resource
Aktualisieren Sie nach dem Einrichten des Installationsskripts die Magento -URL und sehen Sie sich die Datenbank an. Wenn das Installationsskript erfolgreich ausgeführt wird, sollte Ihre Tabelle erstellt werden. Magento prüft, ob Installations- oder Upgrade -Skripte basierend auf der Versionsnummer in der Tabelle Konfigurationsdatei und Datenbank ausgeführt werden müssen. Wenn die Version nicht übereinstimmt, wird nach der entsprechenden Versionsdatei nachgewiesen.
Upgrade -Skript:
Sie können Upgrade -Skripte verwenden, wenn Sie Module aktualisieren müssen (z. B. das Hinzufügen neuer Datenbankfelder oder Änderungsdatenbankschemata). Das Upgrade -Skript ähnelt dem Installationsskript, außer dass der Name und die Versionsnummer unterschiedlich sind.
Angenommen, wir möchten eine Spalte hinzufügen und eine andere Spalte ändern. Erstellen Sie ein Upgrade -Skript im Verzeichnis Articles/sql/articles_setup
: mysql4-upgrade-0.1.0-0.1.1.php
<code class="language-php"><?php $installer = $this; $installer->startSetup(); $installer->getConnection() ->changeColumn($installer->getTable('articles'), 'long_desc', 'long_desc', array( 'type' => Varien_Db_Ddl_Table::TYPE_TEXT, 'nullable' => true, )) ->addColumn($installer->getTable('articles'), 'sub_title', array( 'type' => Varien_Db_Ddl_Table::TYPE_VARCHAR, 'nullable' => false, 'comment' => 'Sub title' )); $installer->endSetup(); ?></code>Aktualisieren Sie die Versionsnummer in der Datei
0.1.1: config.xml
<code>app --code ---local ----Sitepoint ------Articles --------Block --------controllers --------etc --------Model --------sql</code>
Nach dem Auffrischen der URL wird Magento das Upgrade -Skript ausführen und das Datenbankschema aktualisieren.
Zusammenfassung:
So funktionieren Magento -Installations- und -aufrümungsskripte. Sie können versuchen, ein neues Modul zu erstellen und diese Skripte auszuführen. Wenn Sie Fragen haben, können Sie bitte fragen.
(Der FAQ -Teil im Originaltext wird hier weggelassen, da der FAQ -Teil wenig damit zu tun hat, wie das Installationskript selbst geschrieben und eingerichtet wird und ein breiteres Thema von Magento Upgrade ist.)
Das obige ist der detaillierte Inhalt vonMagento Installation und Upgrade Datenskripte erläutert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!