Я хочу узнать разницу между InstallSchema и InstallData в деталях.
Мне также нужно знать, когда я могу использовать InstallSchema.phpи InstallData.php?
Я хочу узнать разницу между InstallSchema и InstallData в деталях.
Мне также нужно знать, когда я могу использовать InstallSchema.phpи InstallData.php?
Ответы:
Сначала оба InstallSchema и InstallData оба метода вызываются при установке любого нового модуля
Сценарии настройки схемы изменяют схему базы данных, они создают или изменяют необходимые таблицы базы данных. Если модуль устанавливается, выполняется Setup \ InstallSchema :: install ().
Это означает, что он создает новую таблицу и ее поля со своей структурой.
Установочные сценарии InstallData содержат записи, которые необходимо вставить в базу данных. Атрибуты, которые поставляются с Magento по умолчанию, страницы Cms, различные группы и роли по умолчанию, являются примерами настройки данных.
Настройка данных выполняется после настройки схемы, они работают аналогичным образом.
Итак, приходим к выводу: главное различие между ними заключается в том, что InstallSchema используется для создания таблицы и ее структуры. Хотя InstallData используется для вставки / добавления данных в таблицу.
Customer, Qoute, Order, Catalog, Product, Category.
Есть следующие различия,
InstallSchema
Цель InstallSchema.php - создать новую таблицу / атрибут / поля в базе данных.
InstallData
Цель InstallData.php - вставить данные / значение в базу данных.
Magento2 использует четыре типа файлов для начальных операций, связанных с базой данных, которые выполняются только в процессе установки модуля (эти файлы запускаются только один раз за время их существования). Эти файлы следующие
- InstallSchema.php
- InstallData.php
- UpgradeSchema.php
- UpgradeData.php
Все эти файлы присутствуют в Magento_root/{app/Vendor}/{Vendor_Name}/{Module_Name}/Setupпространстве имен вашего модуля magento. Здесь я описал все файлы с их использованием.
InstallSchema.php
Этот файл выполняется первым сразу после регистрации ваших модулей (имеется в виду сразу после того, как ваш модуль и его версии внесены в таблицу ->
setup_module). Этот файл используется для создания таблиц с атрибутом столбцов в вашей базе данных, которые впоследствии используются новым установленным модулем.
InstallData.php
Этот файл выполняется после
InstallSchema.php. Он используется для добавления данных во вновь созданную таблицу или любую существующую таблицу.
UpgradeSchema.php
Этот файл поставляется с модулем и запускается только тогда, если у вас уже установлены предыдущие версии этих модулей в вашем magento (означает, что он имеет запись своей предыдущей версии в таблице ->
setup_module). Он используется для управления таблицей, связанной с модулем (означает, что он используется для изменения схемы таблицы, означает атрибут столбцов и добавляет новый столбец в эту таблицу).
UpgradeData.php
Этот файл запускается после
UpgradeSchema.php. У него та же концепция, что иInstallData.phpу, но с помощью этого файла вы можете изменять / изменять содержимое базы данных без использования файлов моделей. Вы также можете использовать этот файл, чтобы добавить новый контент в базу данных так же, как мыInstallData.php. Но так же, какUpgradeSchema.phpон будет работать только тогда, если у вас установлены предыдущие версии этих модулей в вашем magento.
Как я уже сказал, при запуске эти файлы запускаются только один раз, поэтому основное использование этих файлов - это подготовка таблиц и данных для модуля, который использовался модулем в течение его существования.
Примечание: Magento использует эти файлы для создания таблиц, которые используются в функциональных возможностях Magentos и для добавления содержимого, такого как cms_contents, customer_groups & attribute, Products_Types & attribute, Taxation groups и т. Д.