我将在服务器中运行一个脚本,该脚本将自动在数据库中创建模型实例。这个想法是使用无限循环(例如 while True:),它将无休止地创建实例,直到我以某种方式停止它。
我想使用 Django 从我的网站上很好地检查我的数据库有多大,然后我想停止或重新启动它。
这里有什么好的方法吗?
我正在考虑芹菜,但我不知道我怎么会不知道如何阻止它,而且它看起来有点矫枉过正。有什么建议吗?
一个简单的解决方案是使用一个类将脚本的名称以及是否应该继续运行保存到数据库中:
class ScriptTracker():
name = models.Charfield()
keep_running = models.BooleanField()
然后您的脚本将在每个循环中检查数据库以查看是否应该停止:
def my_script():
while True:
if not ScriptTracker.objects.get(name="my_script").keep_running:
# stop running
return
# creating an instance in the db
MyObject.objects.create(name="helloworld")
- 创建 ScriptTracker 对象
ScriptTracker.objects.create(name="my_script", keep_running=True)
- 开始运行脚本,如果脚本是作为管理命令构建的,则可以简单地完成:
python manage.py my_script
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)