web-dev-qa-db-fra.com

Drush sur Windows - La commande pm-enable a besoin d'un niveau supérieur bootstrap pour s'exécuter)

J'ai installé aquia drupal et ajouté un dossier principal drupal dans la liste des sites).

J'ai également installé l'installateur Windows de drush, cela fonctionne bien pour le téléchargement de modules mais quand j'essaye de les activer j'obtiens cet écran:

C:\Documents and Settings\Administrator\Desktop\drupal>drush en ctools
Command pm-enable needs a higher bootstrap level to run - you will       [error]

need invoke drush from a more functional Drupal environment to run
this command.
The drush command 'en ctools' could not be executed.                     [error]

Drush was not able to start (bootstrap) the Drupal database.             [error]

Hint: This error often occurs when Drush is trying to bootstrap a
site that has not been installed or does not have a configured
database.

Drush was attempting to connect to :
  Drupal version    : 7.9
  Site URI          : http://default
  Default theme     : garland
  Administration theme: garland
  PHP configuration : C:\Program Files\Propeople\Drush\Php\php.ini
  Drush version     : 5.0-dev
  Drush configuration:
  Drush alias files :
  Drupal root       : C:/Documents and
Settings/Administrator/Desktop/drupal
  Site path         : sites/default
  Modules path      : sites/all/modules
  Themes path       : sites/all/themes
  File directory path: sites/default/files
  %paths            : Array

You can select another site with a working database setup by
specifying the URI to use with the --uri parameter on the command
line or $options['uri'] in your drushrc.php file.

Quelqu'un sait comment résoudre ce problème?

En guise de remarque, quelle est la façon la plus simple de se mettre au travail avec le bash travaillant sur Windows? Des bons tuts?

10
qwertymk

Cette erreur particulière se produit lorsque drush ne peut pas trouver le fichier settings.php à lire et "bootstrap" lui-même.

Vous devez cd dans le répertoire drupal (racine du document) de votre installation drupal) afin qu'il puisse être lu dans un fichier settings.php.

On dirait que votre pwd (répertoire de travail actuel) est sur votre bureau. Je vais faire une supposition rapide que ce répertoire n'est pas là où se trouve votre installation drupal.

En guise de remarque, quelle est la façon la plus simple de se mettre au travail avec le bash travaillant sur Windows? Des bons tuts?

Je recommande fortement de chercher à installer/utiliser Cygwin sur Windows; car c'est une légère amélioration.

De là, vous pourrez faire plus de choses avec Drush. La synchronisation sql et plusieurs autres fonctions que j'entends ne fonctionnent pas totalement de manière fiable. Pour encore plus de points bonus, vous voudrez peut-être passer à un environnement linux ou mac (quelque chose qui a un terminal intégré).

Si vous devez rester avec Windows, veuillez considérer un projet drupal appelé, quickstart , qui crée une machine virtuelle qui vous permet d'exécuter ubuntu via un terminal de bureau distant.

10
chrisjlee

Si le dossier de votre site n'est pas nommé par défaut, puis accédez au dossier contenant le fichier settings.php et réessayez. Vous pouvez également spécifier explicitement la racine et le site avec les options --root et --uri. Voir drush topic pour plus d'aide drush; en particulier, lisez l'exemple de rubrique d'alias.

Sachez qu'il existe toujours des problèmes ouverts avec Drush sous Windows. Pour un résultat optimal, assurez-vous que vous utilisez le dernier programme d'installation (23 novembre au moment de la rédaction de ce document).

5
greg_1_anderson

J'ai eu un problème similaire, mais la cause profonde était un peu différente. Drush n'a pas pu trouver le fichier php.ini. Un moyen simple de vérifier si vous rencontrez le même problème consiste à exécuter drush status et voyez si le PHP Configuration la valeur est vide ou non.

Si tel est le cas, le moyen rapide et facile de résoudre ce problème consiste à spécifier la variable de chemin PHPRC dans Environment Settings et pointez-le sur le bon fichier php.ini.

1
Nerrve

D'après mon expérience, cette erreur se produit, lorsque php invoqué par drush ne charge pas les modules supplémentaires, qui sont utilisés, lorsque php est utilisé à l'intérieur du serveur Web (comme pdo et pdo_mysql).

Trouvez où se trouvent sur votre système les fichiers tels que pdo.ini et pdo_mysql.ini. Ensuite, définissez la variable d'environnement PHP_INI_SCAN_DIR pour pointer vers ce répertoire et essayez à nouveau d'exécuter drush.

1
Міша

Problème d'activation des modules à l'aide de Drush.

Système d'exploitation: Windows 10 | Wamp Server 3.0.6 6 bits | Apache 2.4.23 | PHP 5.6.25 | Mysql 5.7.14

$ drush status

Version Drupal: 8.3.3

URI du site: http: // par défaut

Pilote de base de données: mysql

Nom d'hôte de la base de données: 127.0.0.1

Port de base de données: 3306

Nom d'utilisateur de la base de données: root

Nom de la base de données: d8

Configuration PHP: C:\wamp64\bin\php\php5.6.25\php.ini

PHP OS: WINNT

Script Drush: C:/Users/{nom d'utilisateur}/AppData/Roaming/Composer/vendor/dru sh/drush/drush.php

Version Drush: 8.1.12

Répertoire temporaire Drush: C:\Users {nom d'utilisateur}\AppData\Local\Temp

Configuration de Drush:

Drush des fichiers d'alias:

Racine Drupal: C:\wamp64\www\d8

Fichier de paramètres Drupal: sites/default/settings.php

Chemin du site: sites/par défaut

Chemin de configuration de la synchronisation: sites/default/files/config_E6SAOaCUH8rQXxYNzKf6ZlT-u VwHuORJbi1aeT8x1zE4nMxT8FxUGFr36_Cjtq_ACGAGLt4_9g/sy nc

------ Sortie Bash Github -------

laxman-nb MINGW64/c/wamp64/www/d8/sites/par défaut

$ drush cr

La commande cache-rebuild a besoin d'un niveau bootstrap supérieur pour être exécuté - vous devrez invoquer drush à partir d'une [erreur] plus fonctionnelle).

Environnement Drupal pour exécuter cette commande.

La commande cache-rebuild nécessite Drupal core version 8+ pour s'exécuter. [Error]

La commande drush 'cr' n'a pas pu être exécutée. [Erreur]

------ Sortie Bash Github -------

Peux-tu m'aider avec ceci.!

Merci d'avance.

0
laxman2021

vous avez comme moi probablement oublié d'ajouter un docroot/sites/default/settings.local.php

<?php
$databases = array(
    'default' => array(
            'default' => array(
                    'database' => 'database_name',
                    'username' => 'root',
                    'password' => '',
                    'Host' => '127.0.0.1',
                    'port' => '',
                    'driver' => 'mysql',
                    'prefix' => '',
            ),
    ),
);
$conf['file_temporary_path'] = '/tmp';
0
Adrian Sweeney