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