Django 项目中如何单独运行某个 Python 文件

有时候需要在 Django 项目中单独运行某个 Python 文件来测试系统、初始化数据库等等操作。

例如博主在 PyCharm 中 Django 项目根下新建了一个 utils Python 工具包,用来将 json 文件内的数据通过 load_data.py 加载 Django 模型写入到 MySQL 数据库中,如果单独在 PyCharm 右上角配置运行这个 load_data.py 文件时,就会抛出如下异常:
在这里插入图片描述

django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.

按照错误信息提示,具体报错代码是在本 Python 文件当中调用了某个子应用下的一个模型类,既然调用了 Django 中的模型,那么就需要设置 DJANGO_SETTINGS_MODULE 环境变量,以查找 settings.py 文件路径。

而在 PyCharm 中配置 DJANGO_SETTINGS_MODULE 环境变量有如下两种方式:

1.在需要运行的 Python 文件中开始部分加入如下配置代码 (必须放在加载 Django 模型代码之前)

import os
import django

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'your_project.settings')
django.setup()

如果没有加上 django.setup() 的话,程序就会抛出如下异常:

django.core.exceptions.AppRegistryNotReady: Apps aren't loaded yet.

表示 Django 项目的 app 还没有被加载,所以必须添加上述代码。


2.另外在 PyCharm 中还有一种配置环境变量的方式:
在这里插入图片描述
在这里插入图片描述
配置完后,django.setup() 还是必须加上的。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值