Django admin,如何仅一次触发一个函数?

时间:2019-01-24 07:52:17

标签: django python-3.x django-models django-admin

我有一个模型,我们将其命名为A。我已经在Admin中注册了该模型,现在该模型需要预先填充一些数据,这些数据是由第三方Rest调用提供的,管理员只能执行以下操作:启用或禁用某些功能。

现在我只需要调用一次填充器函数,因为表A最初没有任何数据。

我该如何接受?

1 个答案:

答案 0 :(得分:0)

TL; DR:使用管理命令并记录安装后必须调用它的事实。

更长的答案:

可以 use the app.ready() method测试模型是否有记录,如果没有调用函数,请但是

  1. 其余的API调用很容易失败(网络问题或其他原因),这不是您想在此处发生的事情,

  2. 这可能还需要一些时间,并且您不想太慢地启动进程,并且

  3. 您可能有多个app.ready并发调用(通常是在生产设置上启动前端服务器时),并且您当然不想在这里出现竞争条件。