Nach der Erforschung dieser Frage denke ich, die beste Lösung, die für mehrere Django-Projekte ohne Ändern Ihrer Konfiguration jedes Mal, wenn Sie Swap funktionieren wird ist python-django.el
sowie die korrekte Konfiguration von Verzeichnis-lokale Variablen .
python-django ist eine großartige Ergänzung zu python.el für django-Benutzer, mit vielen kleinen Verbesserungen der Lebensqualität, wie das Ausführen von Befehlen usw.
Um die django-Shell immer zu starten, wenn Sie sich in einem Projekt befinden, müssen Sie die richtigen Verzeichnis-Lokalvariablen setzen, indem Sie eine .dir-locals.el
Datei im Stammverzeichnis Ihres Projekts. Sie können diese Konfiguration für die .dir-locals.el
Datei. Der entscheidende Teil ist die Einstellung der python-shell-interpreter args auf manage.py shell
für Ihr Projekt.
((python-mode
(python-shell-interpreter . "python")
(python-shell-interpreter-args . "/home/youruser/code/yourproject/manage.py shell")
(python-shell-prompt-regexp . "In \\[[0-9]+\\]: ")
(python-shell-prompt-output-regexp . "Out\\[[0-9]+\\]: ")
(python-shell-completion-setup-code . "from IPython.core.completerlib import module_completion")
(python-shell-completion-module-string-code . "';'.join(module_completion('''%s'''))\n")
(python-shell-completion-string-code . "';'.join(get_ipython().Completer.all_completions('''%s'''))\n")
(python-shell-extra-pythonpaths "/home/youruser/code/yourproject/apps/")
(python-shell-virtualenv-path . "/home/youruser/.virtualenvs/yourproject")))
```
Die Konfiguration wird übernommen aus diesem Blogpost durch den Autor des Projekts.