我在django项目中添加了一些python文件,但是python文件没有执行。我如何在django中运行该python脚本。
答案 0 :(得分:1)
好的,似乎你想要在HTTP请求/响应周期之外运行脚本, 我建议你制作一个Django管理命令,因为脚本需要例如有权访问数据库环境以更新记录
from django.core.management.base import BaseCommand
from yourapp.models import Thing
import your_script
class Command(BaseCommand):
help = 'Closes the specified poll for voting'
def handle(self, *args, **options):
# Do your processing here
your_script.process(Thing.objects.all())
有了这个,您可以致电./manage.py process_thing
,它将独立运行
更多关于Django管理员命令的信息,https://docs.djangoproject.com/en/1.8/howto/custom-management-commands/
如果以编程方式触发处理,例如来自用户请求, 你必须设置一个队列,并为每个请求创建一个任务作业,我会尝试Celery,更多关于这一点http://celery.readthedocs.org/en/latest/django/first-steps-with-django.html