【发布时间】:2019-08-08 04:00:00
【问题描述】:
我想从一个帖子请求创建两个条目。一个在“日期”模型中,一个在“其他”模型中。两种模型对应的代码如下所示。
class Dates(models.Model):
booking_id = models.AutoField(primary_key=True)
timestamp = models.DateTimeField(auto_now_add=True)
feedback = models.CharField(max_length=8, default='no')
myself = models.BooleanField(default=True)
class Meta:
app_label = 'bookings'
其他是:
class Other(models.Model):
booking_id = models.OneToOneField(
'bookings.Dates',
null=False,
default=1,
primary_key=True,
on_delete=models.CASCADE
)
name = models.CharField(max_length=64)
phone_number = models.CharField(max_length=14)
email_id = models.EmailField(max_length=128)
class Meta:
app_label = 'bookings'
我已经验证了 Dates Serializer 中的数据并在“Dates”表中创建了对象。现在,我想将生成的“booking_id”用作“其他”表的“booking_id”。如何在保持一致性的同时验证序列化程序并在“其他”表中创建对象? 这里的一致性,我的意思是:如果没有发生错误,则在两个表中创建对象,或者如果发生任何错误,则不创建对象。
【问题讨论】:
-
可写的嵌套序列化器就是你要找的:django-rest-framework.org/api-guide/relations/…
-
实际上,我是 DRF 的新手。您能告诉我如何为此编写序列化程序和视图吗?
标签: django post django-models django-rest-framework serialization