2009-11-23 5 views

Répondre

7

Vous pouvez l'ajouter à votre fichier settings.py. Ou, ajoutez-le au fichier __init__.py dans le répertoire de l'application.

2

Python a trois niveaux d'espace de noms - local (méthode spécifique à la fonction ou classe), global (spécifique au module en cours), et intégré. Autrement dit, Python n'a pas vraiment de variables globales à l'échelle du projet.

S'il s'agit d'une variable en lecture seule, vous pouvez utiliser settings.py pour définir la valeur et import settings pour tous les autres modules qui souhaitent accéder à la variable. Si c'est pour la lecture et l'écriture, j'utiliserais probablement le backend de base de données que j'utilise déjà avec Django, au lieu d'une variable python.

Si vous pouviez fournir une description plus détaillée de ce que vous essayez d'obtenir, nous pourrions peut-être trouver une solution mieux adaptée.

+0

Je suppose que le problème est qu'une variable dans settings.py est dans le projet-portée. Pour avoir une variable pour l'application, un fichier de paramètres dans l'application ou éventuellement une définition dans __init__.py de l'application peut fonctionner. – kioopi

+0

a obtenu les caractères de soulignement retirés autour de init – kioopi

+0

En fait je veux charger un tableau lourd de la base de données (sauter l'appel db direct) – Vishal

3

Faites-vous référence à quelque chose comme une variable d'environnement? Vous pouvez le charger via init ...

__init__.py 

import os 
os.environ['APP_VAR_WHATEVER'] = 'hello world!'