Я использовал метод, описанный в этом посте, для настройки IPython Notebook для приятной игры с Django. Суть метода заключается в создании расширения IPython, которое устанавливает DJANGO_SETTINGS_MODULE и запускает django.setup() при запуске IPython.
Код для расширения:
def load_ipython_extension(ipython):
# The 'ipython' argument is the currently active 'InteractiveShell'
# instance, which can be used in any way. This allows you to register
# new magics or aliases, for example.
try:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
import django
django.setup()
except ImportError:
pass
С недавним обновлением до Ноутбука Jupyter эта установка теперь сломана для меня. Я могу запустить код Django в записной книжке Jupyter, добавив похожий фрагмент кода в первую ячейку записной книжки. Однако я не смог понять, как заставить Jupyter автоматически запускать расширение, поэтому мне не пришлось бы делать это снова для каждой записной книжки, которую я создаю.
Что я должен сделать, чтобы Джанго и Юпитер играли хорошо?
ОБНОВЛЕНИЕ: для @DarkLight - я использую Django 1.8.5 с Jupyter 1.0.0. Код, который я запускаю в блокноте:
import os, sys
sys.path.insert(0, '/path/to/project')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settingsfile")
import django
django.setup()