Я запускаю ноутбук Python через Django shell_plus
с помощью следующей команды:
sudo ./manage.py shell_plus --notebook
Я не совсем уверен, как она работает, но ./manage.py shell_plus
знает, как искать дополнительные настройки в django файле settings.py
, где у меня есть следующие I Python аргументы:
IPYTHON_ARGUMENTS = [
'--ext', 'django_extensions.management.notebook_extension',
'--profile=mitchell',
'--port=8889',
'--notebook-dir=/home/rootadmin/server/',
'--certfile=/ssl/fullchain.pem',
'--keyfile=/ssl/privkey.pem',
'--ip=*',
'--no-browser',
'--no-mathjax',
]
Пока все это работает как задумано. Он запускает сервер записных книжек, к которому я могу получить доступ, и он обслуживает любой файл записной книжки в notebook-dir
, который является тем же каталогом, из которого я запускаю команду ./manage.py shell_plus --notebook
. Я могу выполнить код и получить доступ к моим django моделям.
Однако это мой общий домашний каталог, и я не хочу, чтобы все мои записные книжки были в этом каталоге. Я сделал новый каталог, из которого я хочу обслуживать свои записные книжки. Я изменяю свой notebook-dir
соответственно.
'--notebook-dir=/home/rootadmin/server/jupyter_directory',
Затем, если я запускаю ноутбук, он, кажется, сначала работает: я могу получить к нему доступ онлайн, и он показывает мне записные книжки в пределах jupyter_directory
, однако, когда я пытаюсь запустить любой код это требовало моих django моделей, оно больше не работает, говоря, что эти модели не определены. В терминале, где я запустил ноутбук, я вижу следующую ошибку:
[IPKernelApp] WARNING | Error in loading extension: django_extensions.management.notebook_extension
Check your config files in /home/rootadmin/.ipython/profile_mitchell
Я не знаю, что проверять. Я предполагаю, что ошибка в том, что он пытается импортировать из неправильного места сейчас. Как я могу обслуживать каталог A и импортировать из каталога B?