J'ai affaire à un très vieux projet drupal plein de requêtes SQL. La compréhension de PhpStorm de SQL est très pratique mais j'ai des problèmes avec le drupalisme comme {table_name}
. IDE s'en plaint <reference> expected, got '{'
.
Comment puis-je configurer PhpStorm pour qu'il comprenne que la chaîne à l'intérieur des accolades n'est qu'un nom de table? Ou au moins faire ignorer les accolades?
Réponses:
Dans Préférences PhpStorm> Outils> Base de données> Paramètres utilisateur:
\{\w+\}
aux modèles de paramètres.Vous pouvez également modifier la ligne avec
%\w+
pour être autorisé pour le langage php pour les espaces réservés comme%d
. Voir la capture d'écran et également le billet de blog PhpStorm de JetBrain: Configuration de l'injection du langage de base de données .la source
\{\w+\}
pour\{(\w+)\}
mieux fonctionner avec l'exécution de la requête de PhpStorm (le raccourci Ctrl + Entrée). Sans les parenthèses supplémentaires, si vous essayez d'exécuter la requête, il vous invitera à entrer un paramètre appelé # 1 pour votre{table_name}
, mais avec les parenthèses, il vous sera plus utile de demander un paramètre table_name .SELECT * FROM {node} WHERE nid = :nid
, appuyer sur le raccourci Ctrl + Entrée affiche les invites suivantes: avec parenthèses et sans parenthèses .Je ne connais aucun moyen de faire reconnaître à PHPStorm la syntaxe Drupal SQL.
Mais si vous souhaitez simplement déboguer une requête créée par Drupal, vous pouvez supprimer les accolades de la requête après l'avoir copiée dans la console de requête PHPStorm.
la source