Як я можу повторно встановити модуль?


12

Я створюю на модулі Drupal 8. Я використовував власну таблицю для зберігання даних, зібраних із форм. Якось під час встановлення таблиці не створюються через проблему у файлі встановлення. Тепер я виправив проблему і хочу знову встановити модуль.

Як я можу повторно встановити модуль?

З цього та цього обговорення я знаю, що функціональність відключити модуль була видалена.

Чи є інший спосіб перевстановити модуль, щоб створити його таблиці баз даних?

Відповіді:


17

Тут може допомогти і модуль Devel .

Це робить сторінку "Перевстановити модулі" доступною за адресою / devel / перевстановити, що дозволяє повторно встановлювати модулі масово.

Також варто згадати Друша; dis(Очевидно) не працює більше, але pm-uninstallі до enсих пір. І якщо у вас встановлено Devel, ви можете викликати перевстановлення

drush dre module1 module2

Зауважте, що devel ще не підтримує зміни для видалення лише для Drupal 8 cgit.drupalcode.org/devel/tree/drush/devel.drush.inc#n115
anavarre

1
Я почав випуск виправити цю drupal.org/node/2292425
anavarre

Я думаю, що всі відповіді, розміщені тут, неправильні. Оригінальне питання - як "перевстановити". Це не те саме, як видалити та встановити. На жаль, усі сценарії тут, на жаль, видаляють, що є головним кроком назад для D8, оскільки це стерє конфігурацію для цього модуля. Я все ще шукаю правильну відповідь, як "перезавантажити" конфігурацію установки для модуля (без видалення).
ліквід

9

Як ви вже говорили, "Вимкнути функціональність видалено з Drupal 8" ..

Коротка відповідь - ви, ймовірно, шукаєте вкладку "Видалити", яку можна знайти на сторінці "Розширення" (Модулі) / адмін / модулі / видалити

Більше немає жодної сірої зони між включеним модулем, активацією проти вимкнення та «очищенням». "Інваліди" - це вже не річ. Видалення модуля означає видалення всіх його слідів.

Перейдіть до адміністратора / модулів / видалення та видалення модуля ... Потім увімкнено модуль зі сторінки списку модулів. Це повинно встановити модуль ще раз.

Наприклад ....

Перед встановленням модуля заборони в Drupal 8 ... модуль ban_ip не існує в базі даних ..

введіть тут опис зображення введіть тут опис зображення

Після встановлення модуля заборони в Drupal 8 ... створюється таблиця ban_ip і модуль не можна відключити, але його можна видалити в адміністраторі / модулях / видалити

введіть тут опис зображення введіть тут опис зображення введіть тут опис зображення

Тепер, якщо ви видалите модуль. Таблиця буде видалена з бази даних, і модуль можна буде знову встановити, що створить таблиці в базі даних ..

введіть тут опис зображення введіть тут опис зображення


Велике спасибі за таке дивовижне пояснення. Я перевірив список модулів на вкладці " Видалення" , але не зміг знайти свій модуль. Якщо ви хочете перевірити код тут, github.com/mohit-rocks/messaging . В даний час ви можете встановити модулі та параметри, пов'язані форми.
mohit_rocks

3

Рішення 1: Видаліть та встановіть знову вручну

Використання інтерфейсу Drupal:

  • Перейдіть на сторінку розширення з меню адміністратора
  • Перейдіть на сторінку видалення модуля
  • Видаліть модуль, який ви хочете
  • Перейдіть на сторінку розширення ще раз (де у вас є список модулів)
  • Встановіть модуль, який ви щойно видалили

Використання Drush (ви повинні спробувати, якщо ви не використовуєте):

  • drush pm-uninstall MODULE -y && drush pm-enable MODULE -y
  • АБО коротше drush pmu MODULE -y && drush en MODULE -y

Замініть MODULE на ім'я вашого модуля.

Рішення 2: Перевстановити за допомогою модуля Devel

Припустимо, у вас встановлений модуль розробки.

Використання інтерфейсу Drupal:

  • Відвідайте стежку /devel/reinstall
  • Перевстановіть модулі, які хочете

Використання Drush:

  • drush devel-reinstall MODULE -y
  • АБО коротше drush dre MODULE -y

Замініть MODULE на ім'я вашого модуля.


1

Якщо нічого іншого не працює, ви можете спробувати нижче для Drupal 8.

  1. Видаліть проблемні файли модуля та його папку

    • rm -rf модулі / your_problematic_module
  2. Видаліть кешовані шаблони гілочок

    • rm -rf сайти / за замовчуванням / файли / php
  3. Очистіть кеш Drupal

ПРИМІТКА. Перш ніж це зробити, переконайтесь, що резервне копіювання коду та бази даних


1

Якщо ви хочете перевстановити (перезавантажити) конфігурацію встановлення для конкретного модуля, ви можете скористатися цією командою boush:

drush cim --partial --source=modules/custom/MY_MODULE/config/install
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.