-2

我正在尝试从我在 Django 中创建的自定义视图中的按钮触发数据库备份。问题是,在我找到的有关数据库备份的所有信息中,该命令是自动触发的,或者是从 manage.py 命令触发的。

关于如何解决它的任何想法?甚至可以从视图中执行 manage.py 命令?

4

1 回答 1

0

是的,可以manage.py从视图中执行命令。查看有关 django 文档的这一部分。

但真正的问题是你是否应该这样做。备份数据库需要时间,在视图中执行任何命令都将迫使 django 等待该命令完成,然后再将响应发送回浏览器。在那个执行时间里,你的一个工人会很忙,不会接受任何请求。

如果您错误地执行了多次视图,您可以阻止所有工作人员,这样在备份完成之前您的网站将无法访问。

考虑使用一些卸载或后台任务,如CeleryuWSGI spooler或不使用视图。

于 2016-03-15T13:30:28.703 回答