通过appengine的cron.yaml运行django manage.py 命令



我不相信这个问题以前在网上被问过。

我知道对于 cron'd 任务,需要有三个处理程序。一个在cron.yaml,app.yaml和脚本本身中。

但是管理命令呢,它们本身已经具有独特的结构。

这是我的cron.yaml

cron:
- description: operate on new models every 10 minutes
url: /my_model/management/commands
schedule: every 10 minutes

这是我的应用程序.yaml

handlers:
- url: /my_model/management/commands
script: operate.py

例子会有很大帮助,谢谢!

管理命令与 django 管理命令相同。 它们仅从命令提示符本地运行。

管理命令不需要任何处理程序,它们不在生产服务器上运行,也不会在响应 HTTP 请求时运行。

编辑:

cron.yaml 只是指定一个要按计划调用的 URL。 您可以像对待其他网址一样对待该网址。 以下示例显示 cron 调用与其他调用一样,但利用 App Engine 的身份验证来确保随机人员不会访问它。 在这种情况下,请求仍将通过 django 的请求处理进行路由,您必须添加适当的处理程序来 urls.py:

- url: /cron
  script: djangoappengine.main.application
  login: admin
- url: /.*
  script: djangoappengine.main.application

最新更新