在我的Django模型中,我在一个名为Batch的类上有以下FK。
class Batch(models.Model):
sender_name = models.ForeignKey(Originator,
related_name='batch')
现在,这意味着用户必须在保存之前先创建一个Originator。但是,如果Originator不存在,我想创建一个新的并将其添加到批处理中。我正在考虑在批量保存()上这样做。但是有没有更好的办法呢?
您可以在view
方法中创建FK
对象,或者在tastype的情况下创建水合物。
通过不将FK对象创建逻辑放在模型的save
方法中,您不会混淆逻辑。换句话说,避免在另一个类的save
方法中创建一个类的对象。
这样逻辑是干净的,你所要做的就是bundle.data['contact'] = Originator.objects.get_or_create()
而不是覆盖save