Chcę szczegółowo poznać różnicę między InstallSchema i InstallData.
Muszę także wiedzieć, kiedy mogę użyć InstallSchema.phpi InstallData.php?
Chcę szczegółowo poznać różnicę między InstallSchema i InstallData.
Muszę także wiedzieć, kiedy mogę użyć InstallSchema.phpi InstallData.php?
Odpowiedzi:
Najpierw wywoływana jest zarówno metoda InstallSchema, jak i InstallData podczas instalacji nowego modułu
Skrypty konfiguracji schematu zmieniają schemat bazy danych, tworzą lub zmieniają potrzebne tabele bazy danych. Jeśli moduł się instaluje, wykonywany jest Setup \ InstallSchema :: install ().
Oznacza to, że tworzy nową tabelę i jej pola ze swoją strukturą.
Skrypty instalacyjne InstallData zawierają wpisy, które moduł musi wstawić do bazy danych. Atrybuty, które są domyślnie dostarczane z Magento, strony Cms, różne domyślne grupy i role, są przykładami konfiguracji danych.
Konfiguracja danych jest wykonywana po konfiguracji schematu, działają one w podobny sposób.
Doszli do konkluzji, Główna różnica między nimi polega na tym, że InstallSchema służy do tworzenia tabeli i jej struktury. Podczas gdy InstallData służy do wstawiania / dodawania danych do tabeli.
Customer, Qoute, Order, Catalog, Product, Category.
Istnieją następujące różnice,
InstallSchema
Celem InstallSchema.php jest utworzenie nowej tabeli / atrybutu / pól w bazie danych
InstallData
Celem InstallData.php jest wstawienie danych / wartości do bazy danych.
Magento2 używa plików czterech typów do początkowych operacji związanych z bazą danych, które są wykonywane tylko podczas procesu instalacji modułu (pliki te uruchamiane są tylko raz, gdy tylko istnieją). Te pliki są następujące
- InstallSchema.php
- InstallData.php
- UpgradeSchema.php
- UpgradeData.php
Wszystkie te pliki są obecne w obszarze Magento_root/{app/Vendor}/{Vendor_Name}/{Module_Name}/Setupnazw twojego modułu magento. Tutaj opisałem wszystkie pliki z ich użyciem.
InstallSchema.php
Ten plik jest wykonywany jako pierwszy zaraz po rejestracji modułów (oznacza to, że moduł i jego wersje są wprowadzane do tabeli ->
setup_module). Ten plik służy do tworzenia tabel z atrybutem kolumn w bazie danych, które są później używane przez nowy zainstalowany moduł.
InstallData.php
Ten plik jest wykonywany po
InstallSchema.php. Służy do dodawania danych do nowo utworzonej tabeli lub dowolnej istniejącej tabeli.
UpgradeSchema.php
Ten plik jest dostarczany z modułem i działa tylko wtedy, jeśli masz już zainstalowane moduły poprzedniej wersji w swoim magento (oznacza, że ma zapis swojej poprzedniej wersji w tabeli ->
setup_module). Służy do manipulowania tabelą związaną z modułem (oznacza, że służy do zmiany schematu tabeli oznacza atrybut kolumny i do dodania nowej kolumny do tej tabeli).
UpgradeData.php
Ten plik działa po
UpgradeSchema.php. Ma tę samą koncepcję, coInstallData.phpma, ale za pomocą tego pliku można zmieniać / modyfikować zawartość bazy danych bez użycia plików modelu. Możesz również użyć tego pliku, aby dodać nową zawartość do bazy danych tego samego nasInstallData.php. Ale to samoUpgradeSchema.php, co działa, będzie działać tylko wtedy, jeśli masz te moduły poprzednią wersję zainstalowaną w swoim Magento.
Jak już powiedziałem, uruchamianie tych plików działa tylko raz, więc podstawowym zastosowaniem tych plików jest przygotowanie tabel i danych dla modułu, z którego moduł korzysta przez cały czas jego istnienia.
Uwaga: Magento używa tych plików do tworzenia tabel, które są używane w funkcjach Magentos i do dodawania treści, takich jak cms_contents, grupy klientów i atrybuty, typy produktów i atrybuty, grupy podatków itp.