例如,我有两个班级。
class Book(models.Model):
title = models.CharField (...)
author = models.CharField (...)
price = models.Integer(...)
class Order(models.Model)
order_datetime = models.DateTimeField()
order_book = models.ForeignKey(Book,....)
在每次在数据库中添加新的Book对象后,应该自动创建新的Order对象。并且order_book fielt应该使用相应的书籍对象自动执行。
我该怎么做?
Thanx的帮助!
答案 0 :(得分:1)
您可以覆盖Book的保存方法:
class Book(models.Model):
title = models.CharField (...)
author = models.CharField (...)
price = models.Integer(...)
def save(self, *args, **kwargs):
is_new = True if not self.id else False
super(Book, self).save(*args, **kwargs)
if is_new:
order = Order(order_book=self)
order.save()
如果它应该填充插入时间,你也可以将auto_now_add = True添加到order_datetime:
order_datetime = models.DateTimeField(auto_now_add=True)