Como posso reinstalar um módulo?

12

Estou criando no módulo Drupal 8. Eu usei uma tabela personalizada para armazenar os dados coletados dos formulários. De alguma forma, durante a instalação, as tabelas não são criadas devido a um problema no arquivo de instalação. Agora eu corrigi o problema e quero instalar o módulo novamente.

Como posso reinstalar um módulo?

A partir deste e este discussões, eu sei o módulo Disable funcionalidade foi removida.

Existe alguma outra maneira de reinstalar um módulo para que suas tabelas de banco de dados sejam criadas?

mohit_rocks
fonte

Respostas:

17

O módulo Devel também pode ajudar aqui.

Ele disponibiliza uma página "Reinstalar módulos" em / devel / reinstall, que permite reinstalar os módulos em massa.

Também vale a pena mencionar Drush; dis(obviamente) não funciona mais, mas pm-uninstalle enainda o fazem. E se você tiver o Devel instalado, você pode chamar uma reinstalação com

drush dre module1 module2
Clive
fonte
Note-se que devel ainda não suporta do Drupal 8 desinstalação somente muda cgit.drupalcode.org/devel/tree/drush/devel.drush.inc#n115
anavarre
11
Eu comecei uma questão de corrigir isso drupal.org/node/2292425
anavarre
Acho que todas as respostas postadas aqui estão incorretas. A questão original é como "reinstalar". Não é o mesmo que desinstalar e instalar. Infelizmente, todos os cenários aqui fazem uma desinstalação que é um grande passo para trás no D8, pois isso limpará a configuração desse módulo. Ainda estou procurando a resposta correta de como "recarregar" a configuração de instalação de um módulo (sem desinstalar).
liquidcms 26/03
9

Como você disse "Desativar funcionalidade é removida do Drupal 8" ..

A resposta curta é: você provavelmente está procurando a guia "Desinstalar" encontrada na página "Estender" (Módulos) / admin / modules / uninstall

Não há mais nenhuma área cinzenta entre um módulo ligado e ativo vs desligado e "limpo". "Desativado" não é mais uma coisa. Desinstalar um módulo significa remover todos os vestígios dele.

Vá para admin / modules / uninstall and uninstall module ... Em seguida, ative o módulo na página de lista de módulos. Isso deve instalar o módulo novamente.

Por exemplo ....

Antes de instalar o módulo Ban no Drupal 8 ... o módulo ban_ip não existe no banco de dados.

insira a descrição da imagem aqui insira a descrição da imagem aqui

Após a instalação do módulo Ban no Drupal 8 ... a tabela ban_ip é criada e o módulo não pode ser desativado, mas pode ser desinstalado em admin / modules / uninstall

insira a descrição da imagem aqui insira a descrição da imagem aqui insira a descrição da imagem aqui

Agora, se você desinstalar o módulo .. A tabela será removida do banco de dados e o módulo poderá ser instalado novamente, o que criará tabelas no banco de dados.

insira a descrição da imagem aqui insira a descrição da imagem aqui

Anil Sagar
fonte
Muito obrigado por essa explicação incrível. Verifiquei a lista de módulos na guia desinstalar , mas não encontrei meu módulo. Se você quiser verificar o código aqui, github.com/mohit-rocks/messaging . Atualmente você pode instalar módulos e formulários relacionados às configurações estão chegando.
mohit_rocks
3

Solução 1: Desinstale e instale novamente manualmente

Usando a interface do usuário Drupal:

  • Vá para a página Estender no menu do administrador
  • Vá para a página do módulo de desinstalação
  • Desinstale o módulo que você deseja
  • Vá para a página Estender novamente (onde você tem uma lista de módulos)
  • Instale o módulo que você acabou de desinstalar

Usando Drush (você deve experimentá-lo se não o usar):

  • drush pm-uninstall MODULE -y && drush pm-enable MODULE -y
  • OU em suma drush pmu MODULE -y && drush en MODULE -y

Substitua MODULE pelo nome do seu módulo.

Solução 2: reinstalar usando o módulo Devel

Supondo que você tenha o módulo devel instalado.

Usando a interface do usuário do Drupal:

  • Visite o caminho /devel/reinstall
  • Reinstale os módulos que você deseja

Usando Drush:

  • drush devel-reinstall MODULE -y
  • OU em suma drush dre MODULE -y

Substitua MODULE pelo nome do seu módulo.

Jigarius
fonte
1

Se nada mais funcionar, você pode tentar o abaixo para o Drupal 8.

  1. Remova os arquivos problemáticos do módulo e sua pasta

    • rm -rf modules / your_problematic_module
  2. Remova os modelos de galho em cache

    • rm -rf sites / padrão / arquivos / php
  3. Limpe o cache do Drupal

NOTA: Certifique-se de fazer backup do código e do banco de dados antes de fazer isso

Rijas Madurakuzhi
fonte
1

Se você deseja reinstalar (recarregar) a configuração de instalação para um módulo específico, você pode usar este comando drush:

drush cim --partial --source=modules/custom/MY_MODULE/config/install
liquidcms
fonte