2009-09-20 10 views
4

Je souhaite tester mon shell de projet IDLE django dans windows. Je commandes suivantesExécution de Django depuis IDLE

exécutent de
from django.template import Template, Context 
t = Template('test template') 

mais je me l'erreur suivante.

Traceback (most recent call last): 


File "<pyshell#1>", line 1, in <module> 
    t = Template('test template') 
    File "C:\Program Files\Python26\lib\site-packages\django\template\__init__.py", line 164, in __init__ 
    if settings.TEMPLATE_DEBUG and origin is None: 
    File "C:\Program Files\Python26\lib\site-packages\django\conf\__init__.py", line 28, in __getattr__ 
    self._import_settings() 
    File "C:\Program Files\Python26\lib\site-packages\django\conf\__init__.py", line 59, in _import_settings 
    self._target = Settings(settings_module) 
    File "C:\Program Files\Python26\lib\site-packages\django\conf\__init__.py", line 94, in __init__ 
    raise ImportError, "Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE, e) 
ImportError: Could not import settings 'C:\Program Files\Python26\Lib\site-packages\django\conf' (Is it on sys.path? Does it have syntax errors?): Import by filename is not supported. 

Pouvez-vous m'aider?

Répondre

2

Django doit charger plusieurs fichiers comme votre fichier settings.py. Pour vous aider dans cette tâche, Django est livré avec son propre shell (qui peut être IDLE). Si vous avez installé IPython, Django l'utilisera à la place.

Pour accéder à la shell, utilisez le fichier manage.py dans votre répertoire racine:

python manage.py shell 

Si vous voulez encore vraiment utiliser IDLE complètement en dehors de la portée de la « coquille ./manage.py », Regardez le fichier manage.py pour voir comment Django se charge dans tous les fichiers requis.

En bonus, regardez django-command-extensions pour shell_plus (celui-ci offre d'intéressantes fonctionnalités supplémentaires comme le chargement automatique de tous les modèles).

+1

Juste pour être clair, django n'a pas vraiment 'son propre shell', il utilise en fait votre shell python par défaut, mais rend vos modules de projet disponibles avant qu'il ne démarre . –

+1

Merci beaucoup, il a résolu ... Cependant, je souhaite toujours l'utiliser en utilisant IDLE ... –

0

Créer un raccourci, puis le modifier pour avoir des arguments similaires à ceux-ci:

C:\Python27\pythonw.exe c:\Python27\lib\idlelib\idle.py -r d:\projects\project_X\manage.py shell

si vous avez PYTHONSTARTUP sur Windows, il fonctionne, mais alors il va commencer un nouveau processus, perdre de funcs vous peut avoir défini dans le fichier PYTHONSTARTUP.

efficacement vous le verrez démarrer deux fois ci-dessous (1ère fois en vert, puis rouge):

Python 2.7.2 (par défaut 12 Jun 2011, 15:08:59) [MSC c. 1500 32 bits (Intel)] sur win32 Type copyright, credits ou license() pour plus d'informations.

startup.py juste couru

Python 2.7.2 (par défaut 12 Jun 2011, 15:08:59) [32 bits MSC (Intel)] sur win32 Type de help , copyright, credits ou license pour plus d'informations, (InteractiveConsole)

cela était vrai avant d'installer env virtuel et shell_plus et ipython. l'un de ces trois Hosed vers le bas - obtenir les ordures dans la console IDLE maintenant:

0; 32min 1; 32m1 0; 32m: 0 m

0

Pour utiliser au ralenti du cmd je ne les éléments suivants dans Windows 7:

  1. me suis assuré de l'environnement système chemin variable inclus le chemin vers l'emplacement de idle.py (comme C: \ Python27 \ Lib \ idlelib).Pendant que j'étais là, je me suis assuré aussi que les deux python et le dossier Scripts sont inclus (ce dernier contient django-manage.py lorsqu'il est installé par pip)

    Chemin: C: \ Python27 \; C: \ Python27 \ scripts; C: \ Python27 \ Lib \ idlelib, ...

    les chemins indiqués ci-dessus peuvent varier en fonction de votre installation de python,

  2. en option: pour éviter de taper l'extension .py je me suis assuré le PATHTEXT La variable d'environnement système incluait l'extension .PY.

    PATHTEXT: .COM; .EXE; ..., .PY

Maintenant, tout ce que je fais tout en travaillant sur le cmd entrez les informations suivantes pour exécuter au ralenti:

  • Ouvrir un fichier inactif (étant dans le même répertoire):

    idle models.py 
    

    cela va ouvrir le fichier models.py à modifier au ralenti

  • Ouvrez le shell en utilisant ralenti (être dans le même répertoire que manage.py)

    idle -r manage.py shell 
    

NOTE: si .PY est pas dans la variable système pathText Environnement vous devrez peut-être ajouter le .py extension à ralenti

Et là vous l'avez, maintenant vous pouvez utiliser l'IDLE. J'espère que cela pourra aider.

0

vous êtes sur A SUPPOSER de Windows:

  1. Faites un clic droit sur votre RALENTI lien pour obtenir des propriétés. Il change le chemin cible pour être le chemin de votre django-projet est en cours d'exécution dans (le répertoire avec votre fichier manage.py
  2. début IDLE
  3. Execute

    import os;. Os.environ.setdefault (» DJANGO_SETTINGS_MODULE », « my_project_root_name.settings »)

maintenant, votre IDLE a le bon contexte mis à connaître vos paramètres et exécuter des cours dans votre django-chemin.

S'il vous plaît me dire si vous c Pensez à une manière encore plus élégante. (Testé sous Win 10 avec Python 3.6)

Questions connexes