代码之家  ›  专栏  ›  技术社区  ›  Joe

Django-最后插入id

  •  7
  • Joe  · 技术社区  · 17 年前

    comment = Comments( ...)
    comment.save()
    comment.id #returns None
    

    class Comments(models.Model):
        id = models.IntegerField(primary_key=True)
    

    4 回复  |  直到 17 年前
        1
  •  7
  •   Steve Losh    17 年前

    id 现场 comment = Comments( ...) 线?如果没有,为什么要定义字段,而不是让Django用AutoField来处理主键?

    如果你像在示例中那样在IntegerField中指定主键,Django不会自动为其赋值。

        2
  •  2
  •   Alexander Ljungberg    17 年前

    只要做

    c = Comment.object.latest()
    

    c.pk
    
    12 #last comment saved.
    
        3
  •  2
  •   oluwaseun    12 年前

    要定义自动设置的主键,请使用AutoField:

    class Comments(models.Model):
        id = models.AutoField(primary_key=True)
    
        4
  •  1
  •   AlbertoPL    17 年前

    您想专门设置一个名为id的新IntegerField作为主键吗?因为Django已经免费为你做了。..

    话虽如此,您是否尝试过从评论模型中删除id字段?