ipynb 是一个python及时交互的笔记本文件,可以在笔记本中运行python并保存记录,特别是在vscode中运行ipynb体验非常好。
传统的django shell 是在终端中运行,缺少代码提示和颜色样式等内容,非常不友好。现在改为在ipynb中使用django shell 后,效率提升非常多。
我一般是在整个django项目内和settings.py 同级别的位置创建一个shell.ipynb
然后第一段要写上引用shell的代码,对于myproject.settings 特别注意要改为自己项目的名称。因为我的项目就叫myproject,就能用。
import os
import django
# 其中的myproject需要改为要使用的项目名称
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'myproject.settings')
os.environ["DJANGO_ALLOW_ASYNC_UNSAFE"] = "true"
django.setup()
接下来,就可以继续使用django shell 了,比如查询一个模型中的值:
from app.models import Domain
domain=Domain.objects.all()
for dm in domain:
print(dm.domain)