瀏覽代碼

django-picklefield 0.1.5 changed from having null=True to having null=False by default.

See:
http://github.com/shrubberysoft/django-picklefield/commit/ba1f726c1fbda40731f0e4a2b63761ff164655bb#commitcomment-78381

This means those who has created their celery tables (via syncdb or
celeryinit) with picklefield versions >= 0.1.5 has to alter their tables to
allow the result field to be NULL.

MySQL:

    ALTER TABLE celery_taskmeta MODIFY result TEXT NULL
Ask Solem 15 年之前
父節點
當前提交
94ce6b4b2d
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      celery/models.py

+ 1 - 1
celery/models.py

@@ -16,7 +16,7 @@ class TaskMeta(models.Model):
     task_id = models.CharField(_(u"task id"), max_length=255, unique=True)
     status = models.CharField(_(u"task status"), max_length=50,
             default=states.PENDING, choices=TASK_STATUSES_CHOICES)
-    result = PickledObjectField(null=False, default=None)
+    result = PickledObjectField(null=True, default=None)
     date_done = models.DateTimeField(_(u"done at"), auto_now=True)
     traceback = models.TextField(_(u"traceback"), blank=True, null=True)