我在一个应用程序中有一个系统模型,我想连接到另一个应用程序(django-helpdesk)中的队列模型。如果没有为 System object 选择 Queue 对象,我想初始化一个新的 Queue 对象,使用来自 System 的信息来生成它。
我已经涵盖了队列的所有必填字段,但这似乎不起作用。它不会抛出错误;它只是从不生成新的 Queue 对象。任何人都可以发现有问题的问题,或推荐另一种解决方法吗?
#models.py
import helpdesk
....
class System(models.Model):
queue = models.ForeignKey(
helpdesk.models.Queue,
blank = True,
null = True,
editable = True,
verbose_name = _('Queue'),
)
def __save__(self, *args, **kwargs):
if not self.queue:
slug = slugify(self.name)
queue = helpdesk.models.Queue(title=self.name, slug=slug)
queue.save()
self.queue = queue.pk
super(System, self).save(*args, **kwargs)
编辑:作为参考,除了对方法使用双下划线之外,还有一个错误save()
。该行self.queue = queue.pk
应改为self.queue = queue
.