编写具有Django数据库功能访问权限的Python程序的最简单方法

Den*_*gan 3 python django django-models django-orm

我有一个网站定期从RSS提要中获取信息(好吧,目前手动,这是我的问题).目前这是作为普通的Django视图实现的,在我看来这不是很好.我想要一个使用cronjob运行的Python程序,而不是手动访问正确的URL来更新信息.

使Python程序访问我的特定Django应用程序和Django ORM的最简单方法是什么?

Joe*_*oks 13

from django.core.management import setup_environ
from django.core.mail import EmailMultiAlternatives, send_mail
from django.contrib.auth.models import User

import settings
from my.app.models import *

setup_environ(settings)
Run Code Online (Sandbox Code Playgroud)

这就是我通过电子邮件发送各方日常更新的cron的方式..py存在于我的django应用程序的根目录中,因此导入设置会相应地反映出来.


Dan*_*man 9

这里给出的所有方法的替代方法是将您的cron作业编写为自定义./manage.py命令.这很容易做到,并且您./manage.py yourcommand可以在命令行或crontab中执行此操作.

关于此的文档非常稀疏,但它确实告诉您查看现有命令的代码,您可以将其用作自己的模板.