python - 无法按脚本启动 django (CronJob)

标签 python django pythonanywhere

我想启动一个脚本,该脚本使用我的 Django 项目和一个首先启动虚拟环境的 python 脚本。

仅供引用设置文件与项目文件夹proj同名。

我编写了某种脚本来启动这样的脚本

#!/usr/bin/python
# -*- coding: utf-8 -*-
activate_this = '/home/myname/virtualenvs/proj/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))

import sys
import subprocess

path = '/home/myname/proj'
if path not in sys.path:
    sys.path.append(path)

subprocess.Popen(['python', '/home/myname/proj/ext_scripts/my_django_script.py'] + sys.argv[1:])

实际脚本像这样导入

...
import time
import os
import django
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "proj.settings")
django.setup()
...

哪个返回

ImportError: No module named 'proj'  

最佳答案

你应该了解django custom commands .

然后执行:python manage.py your_custom_command args

相反:python/home/myname/proj/ext_scripts/my_django_script.py args

关于python - 无法按脚本启动 django (CronJob),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46527392/

相关文章:

python - 为什么我不能在网站上显示转换后的视频?

python - 在 Python 中减去字母

Python:NLTK 中的形容词同义词集

python - 如何替换 pandas DataFrame 中多个分类中的值

python - 如何将 Django 数据库中的模板标签解释/渲染为 HTML

python - 在 Django ListView 中禁用结果计数

python - G Suite SSO,仅限于公司账户,在 Python 和 Flask 中?

django - 链接到 django 管理站点

python - Django View 接收不完整的 POST 负载

python - 如何让 django-debug-toolbar 只显示在我托管在 python 上的 IP 地址上?