如何在Django中获取数据表内最后添加的记录对应的id值
解决方案
你现在调用的latest('id')方法返回的是完整的staff模型实例,而非单独的id字段值,仅需访问实例的id属性即可拿到对应的数值:
# 方式1:基于你现有代码修改,先取实例再拿id count_id = staff.objects.latest('id').id
如果希望性能更优,不需要加载整个模型实例的其余字段,可以直接仅查询id字段:
# 方式2:仅查询id字段,性能更高,表为空时返回None count_id = staff.objects.values_list('id', flat=True).order_by('-id').first()
额外注意:如果数据表内无任何记录,调用latest()会抛出DoesNotExist异常,第二种方式空表时会返回None,你可以根据业务逻辑补充空值判断或异常捕获。
内容的提问来源于stack exchange,提问作者Path Parakh
相关产品推荐
相关产品推荐

