在djang创建子流程任务

2024-04-24 05:39:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下django车型:

STATES = (
    ('P', 'PROCESSING'),
    ('F', 'FINISHED'),
    ('W', 'WAITING')
)

class Script(models.Model):
    title = models.CharField(max_length=100)
    src = models.FileField(upload_to='sctipts/') #regular sh sctipt like ./foo

class Task(models.Model):
    title = models.CharField(max_length=100)
    input_file = models.FileField(upload_to='files/')
    output_file = models.FileField(upload_to='files/')
    sctipt = models.ForeignKey(Script)
    status = models.CharField(max_length=2,
                            choices=STATES,
                            default=WAITING)

创建任务实例后,应该启动相关的bash sctipt。当它完成时,任务需要更新。 我不能在视图中这样做,因为脚本阻塞了Django流。你知道吗

如何执行此操作? 谢谢


Tags: tomodeltitlemodelsscriptlengthmaxclass