解决django项目中py文件如何直接运行【NO module name xxx】

问题背景

我们在使用 django 项目,经常会引入 models 来进行单元测试或者外围项目中的使用,这种情况下使用以下代码即可完成

coding=utf8
import os
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "sites.settings")
django.setup()

但是一旦 py 文件不在当前项目的根目录,运行该程序则会报

【No module name XXX】,那么这种情况应该怎么办呢?

解决办法

只要引入 sys 模块即可,方法如下:

coding=utf8
import os
import django
import sys
sys.path.insert(0, '../../')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "sites.settings")
django.setup()
展开剩余53%