通过任意脚本调用django的模型类
通过任意脚本调用django的模型类
需求:
我想通过任意脚本,调用django的模型类,查询一下数据库的信息,或者新增数据库数据,而不需要通过启动django项目或者使用python manage.py shell
这种方式来运行
解决办法
脚本中添加django项目的路径到sys.path环境变量中
设置django项目的环境变量
然后调用django.setup()
命令
就像这样
import os
import sys
sys.path.append(r"E:\github_code\learn-drf\tutorial") # 这里是django项目的绝对路径,即django项目中manage.py所在的文件夹路径
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'tutorial.settings') # 这里直接从django项目中manage.py进行拷贝
import django
django.setup()
# 导入django项目中的模型类 要是不知道该怎么导入 可以先去django项目中 根目录下创建一个py文件,然后输入模型类名让编辑器自动导入 或者找一找django项目中 使用模型类是怎么导入的 然后拷贝过来即可
# 也可以直接放在django项目的根目录下使用 这样导入就通过编辑器自动提示, 更方便了
from student_manager.models import Student
students = Student.objects.all() # 后面就是直接使用模型类了
for s in students:
print(s)
具体解释
我的django项目
项目路径:E:\github_code\learn-drf\tutorial
因此脚本就是上面写的那样
测试
脚本输出
PS
如果把这个脚本,直接放在django项目的根目录下,即放在django项目中manage.py所在的文件夹路径下,就更好用了,导入模型就靠编辑器自动导入,相当方便
分类:
Python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 记一次.NET内存居高不下排查解决与启示