您的位置:首页 > 编程语言 > Go语言

如何配置基于django的独立运行进程

2014-11-22 10:50 253 查看
django的数据库访问等功能非常强大,但是通常的使用方式都是基于uwsgi的,如何运行基于django的独立进程呢?

经过尝试,配制方法如下:

1. 设置环境变量:

主要是以下两个:

export PYTHONPATH=$PYTHONPATH:/home/username/project

export DJANGO_SETTINGS_MODULE=project.settings

可以把上面的配置写到/home/username/.bash_rc或/home/username/.bash_profile下

调试时可以写到独立文件,例如/home/username/test_env.sh中

然后source /home/username/test_env.sh

2.在独立运行的进程的源代码文件(设为test_proc.py)开头写入以下代码:

import django

在主函数中写入:django.setup()

注意:

一定不能在该文件中import任何会调用数据库操作的模块,而应该直接import这些模块中需要调用的函数,而且被import的模块必须从PYTHONPATH环境变量中设置的位置开始,也就是说即使在相同目录下也得写明全路径。

但是可以import不带有数据库操作函数的模块。

红色部分务必注意!

================================================

补充:

如果由于多人调试,不方便按照第一步的方式设置环境变量,以免引起其他人调试的时候环境变量冲突,可以采用以下方式:

假设需要执行的python脚本位于prj/dir/目录下,在程序开头写入以下代码:

import os, sys

script_dir = os.path.split(os.path.realpath(__file__))[0] # 获取脚本所在的目录

prj_dir = os.path.dirname(script_dir) # 获取其上级目录,及django项目所在的目录。

sys.path.append(prj_dir) # 在python系统路径中加入上一步得到的目录。

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "hcloud.settings") # 设置DJANGO_SETTINGS_MODULE变量。

然后就可以正常使用了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: