web-dev-qa-db-fra.com

Comment définir des variables d'environnement dans PyCharm?

J'ai commencé à travailler dans un projet Django et je voudrais définir certaines variables d'environnement sans avoir à les définir manuellement ni avoir un fichier bash à la source.

J'aimerais définir les variables suivantes:

export DATABASE_URL=postgres://127.0.0.1:5432/my_db_name
export DEBUG=1
# there are other variables, but they contain personal information

J'ai lu this , mais cela ne résout pas ce que je veux. De plus, j'ai essayé de définir les variables d'environnement dans Préférences -> Génération, Exécution, Déploiement -> Console -> Console Python / Console Django , mais elle définit les variables pour l'interpréteur.

39
lmiguelvargasf

Vous pouvez définir des variables d'environnement dans le menu des configurations d'exécution de Pycharm.

  1. Ouvrez le sélecteur d’exécution de la configuration en haut à droite et cliquez sur _Edit Configurations..._

    Edit Configurations...

  2. Trouvez _Environmental variables_ et cliquez sur _..._

    Environmental variables

  3. Ajoutez ou modifiez des variables, puis cliquez sur OK

    Editing environmental variables

Vous pouvez accéder à vos variables d'environnement avec os.environ

_import os
print(os.environ['SOME_VAR'])
_
70
Joran Beasley

J'ai pu comprendre cela en utilisant un plugin PyCharm appelé EnvFile . Ce plugin permet en principe de définir des variables d’environnement pour exécuter des configurations à partir d’un ou de plusieurs fichiers.

L'installation est assez simple:

Préférences> Plugins> Parcourir les dépôts ...> Recherchez "Fichier Env" > Installer le plugin.

Ensuite, j'ai créé un fichier, à la racine de mon projet, appelé environment.env, qui contient:

DATABASE_URL=postgres://127.0.0.1:5432/my_db_name
DEBUG=1

Ensuite, je suis allé à Run -> Edit Configurations, et j'ai suivi les étapes de l'image suivante:

Set Environment Variables

En 3, j'ai choisi le fichier environment.env, puis je pouvais simplement cliquer sur le bouton de lecture dans PyCharm, et tout fonctionnait à merveille.

57
lmiguelvargasf

Cette fonctionnalité a été ajoutée à la IDE maintenant (fonctionne Pycharm 2018.3)

Cliquez simplement sur l'onglet EnvFile dans la configuration d'exécution, cliquez sur Enable EnvFile et cliquez sur l'icône + pour ajouter un fichier env.

Example with the glorious material theme

Mise à jour: identique à la réponse de @imguelvargasf mais le plugin a été activé par défaut pour moi.

4
Nino van Hooff

Je peux voir que toutes les réponses utilisent l’interface graphique pour définir env vars. Cependant, ils semblent se réinitialiser si vous fermez le projet et rouvrez-le. Ce qui fonctionne pour moi sur Linux est de créer un exécutable de terminal et de démarrer pycharm à partir de terminal. De cette façon, il reconnaît toutes les variables env du système.

Étapes pour créer un exécutable de terminal:

Outils -> Créer un lanceur Coomand-line .. -> OK Puis, en exécutant charm dans le terminal, tous les vars env doivent être reconnus.

DISCLAIMER Cependant, il semble que ce ne soit pas dynamique. Si vous prévoyez de modifier les variables env à mi-parcours, vous devrez peut-être vous en tenir aux réponses ci-dessus. Sinon, je pense que cette solution est plus facile.

0
Nick