我有一个要求,有时我们的数据库引擎会出现故障,我需要通过 django 的命令行自动执行某个过程。我正在尝试编写一个代码来运行以执行一些报告并启动一些服务,我需要从 django 上下文中运行,以便我可以使用 django 的库和项目设置。
有什么办法,有没有办法开发一个可以在不检查数据库是否存在的情况下执行的命令行,或者我可以捕获异常?有任何想法吗?
我有一个要求,有时我们的数据库引擎会出现故障,我需要通过 django 的命令行自动执行某个过程。我正在尝试编写一个代码来运行以执行一些报告并启动一些服务,我需要从 django 上下文中运行,以便我可以使用 django 的库和项目设置。
有什么办法,有没有办法开发一个可以在不检查数据库是否存在的情况下执行的命令行,或者我可以捕获异常?有任何想法吗?
NVM,我查看了命令“shell”的源代码并看到了“requires_model_validation”参数。我在我的命令中使用它并且它通过了,这是一个例子
class Command(NoArgsCommand):
args = '<No arguments>'
help = 'This command will init the database.'
requires_model_validation = False
def handle(self, *args, **options):
try:
print 'ss'
except Exception :
raise CommandError('Cannot find default database settings')