我有models.py,如下所示,
class members(models.Model):
id = models.AutoField(primary_key=True)
HID = models.IntegerField(blank=False,unique=True)
owner = models.ForeignKey(User)
member_name = models.CharField(max_length=25, blank=False, default='')
father_name = models.CharField(max_length=25, blank=False, default='')
wife_name = models.CharField(max_length=25, blank=False, default='')
现在每次都手动输入上面的HID值。 当有一个新成员被插入时,我计划输入我之前的成员HID值,之后应该进行插入,以便之后的所有条目都应该用HID + 1更新。
我试图用链表模型实现这个,比如还有一个用next_HID =,但是这里的问题是我的插入非常不像年度一或二,但查询更多,那么每次这个列表必须由做查询。所以我想在插入后每次更新HID号。
请告诉我如何在django模型中为上述目的插入每个插件后运行更新查询
答案 0 :(得分:1)
这很简单:
members.objects.filter(HID__gt=new_member_HID).order_by('-HID').update(HID=F('HID')+1)
如果您正在使用Django Rest Framework中基于类的视图,那么您可以在下面添加此行
serializer = self.get_serializer(data=request.data)
通过覆盖CreateAPIView
的方法create
使用HID
request.data