Jak mogę ponownie zainstalować moduł?


12

Tworzę na module Drupal 8. Użyłem niestandardowej tabeli do przechowywania danych zebranych z formularzy. Jakoś podczas instalacji tabele nie są tworzone z powodu problemu w pliku instalacyjnym. Teraz naprawiłem problem i chcę ponownie zainstalować moduł.

Jak mogę ponownie zainstalować moduł?

Z tego i tych dyskusji wiem, że funkcja Wyłącz moduł została usunięta.

Czy istnieje inny sposób na ponowną instalację modułu, aby utworzyć tabele jego bazy danych?

Odpowiedzi:


17

Devel Moduł może również pomóc tutaj.

Dzięki temu strona „Ponowna instalacja modułów” jest dostępna w katalogu / devel /install, co pozwala na ponowną instalację modułów.

Warto również wspomnieć o Drush; dis(oczywiście) nie działa dłużej, ale pm-uninstalli enjeszcze zrobić. A jeśli masz zainstalowany program Devel, możesz wywołać ponowną instalację za pomocą

drush dre module1 module2

Zauważ, że devel nie obsługuje jeszcze zmian tylko do odinstalowania Drupala 8 cgit.drupalcode.org/devel/tree/drush/devel.drush.inc#n115
anavarre

1
Rozpocząłem problem, aby naprawić ten drupal.org/node/2292425
anavarre

Myślę, że wszystkie zamieszczone tutaj odpowiedzi są nieprawidłowe. Pierwotne pytanie brzmi: jak „ponownie zainstalować”. To nie to samo, co odinstalować, a następnie zainstalować. Wszystkie scenariusze tutaj, niestety, wykonują deinstalację, która jest ważnym krokiem wstecz dla D8, ponieważ spowoduje to wyczyszczenie konfiguracji tego modułu. Wciąż szukam poprawnej odpowiedzi na pytanie „jak ponownie załadować” konfigurację instalacji dla modułu (bez odinstalowania).
liquidcms

9

Jak powiedziałeś „Wyłącz funkcję jest usunięty z Drupal 8” ..

Krótka odpowiedź brzmi - prawdopodobnie szukasz zakładki „Odinstaluj” na stronie „Rozszerz” (moduły) / admin / modules / uninstall

Nie ma już szarej strefy między modułem włączonym i aktywnym vs wyłączonym i „wyczyszczonym”. „Wyłączone” już nie jest rzeczą. Odinstalowanie modułu oznacza usunięcie wszystkich jego śladów.

Przejdź do admin / modułów / odinstaluj i odinstaluj moduł ... Następnie włącz moduł ze strony listy modułów. To powinno ponownie zainstalować moduł.

Na przykład ....

Przed zainstalowaniem modułu banowania w Drupal 8 ... moduł ban_ip nie istnieje w bazie danych ..

wprowadź opis zdjęcia tutaj wprowadź opis zdjęcia tutaj

Po zainstalowaniu modułu banowania w Drupal 8 ... tworzona jest tabela ban_ip i modułu nie można wyłączyć, ale można go odinstalować w admin / modules / uninstall

wprowadź opis zdjęcia tutaj wprowadź opis zdjęcia tutaj wprowadź opis zdjęcia tutaj

Teraz, jeśli odinstalujesz moduł. Tabela zostanie usunięta z bazy danych i moduł może zostać ponownie zainstalowany, co spowoduje utworzenie tabel w bazie danych.

wprowadź opis zdjęcia tutaj wprowadź opis zdjęcia tutaj


Bardzo dziękuję za tak niesamowite wyjaśnienie. Sprawdziłem listę modułów na karcie odinstalowywania , ale nie mogłem znaleźć mojego modułu. Jeśli chcesz sprawdzić kod tutaj github.com/mohit-rocks/messaging . Obecnie możesz zainstalować moduł i nadchodzą formularze związane z ustawieniami.
mohit_rocks

3

Rozwiązanie 1: Odinstaluj i zainstaluj ponownie ręcznie

Za pomocą interfejsu użytkownika Drupal:

  • Przejdź do strony Rozszerz z menu administratora
  • Przejdź do strony modułu odinstalowywania
  • Odinstaluj moduł, który chcesz
  • Przejdź ponownie na stronę Rozszerz (gdzie masz listę modułów)
  • Zainstaluj właśnie odinstalowany moduł

Korzystanie z Drush (powinieneś spróbować, jeśli go nie używasz):

  • drush pm-uninstall MODULE -y && drush pm-enable MODULE -y
  • LUB w skrócie drush pmu MODULE -y && drush en MODULE -y

Zamień MODUŁ na nazwę swojego modułu.

Rozwiązanie 2: Zainstaluj ponownie za pomocą modułu Devel

Zakładając, że masz zainstalowany moduł programistyczny.

Za pomocą interfejsu użytkownika Drupal:

  • Odwiedź ścieżkę /devel/reinstall
  • Ponownie zainstaluj moduły, które chcesz

Korzystanie Drush:

  • drush devel-reinstall MODULE -y
  • LUB w skrócie drush dre MODULE -y

Zamień MODUŁ na nazwę swojego modułu.


1

Jeśli nic więcej nie działa, możesz wypróbować poniżej dla Drupal 8.

  1. Usuń problematyczne pliki modułu i jego folder

    • rm -rf modules / your_problematic_module
  2. Usuń buforowane szablony gałązek

    • rm -rf sites / default / files / php
  3. Wyczyść pamięć podręczną Drupal

UWAGA: Przed wykonaniem tej czynności należy wykonać kopię zapasową kodu i bazy danych


1

Jeśli chcesz ponownie zainstalować (przeładować) konfigurację instalacji dla określonego modułu, możesz użyć tej komendy drush:

drush cim --partial --source=modules/custom/MY_MODULE/config/install
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.