【问题标题】:Is there an autoincrement-per-user field in Django?Django 中是否有每个用户自动增量字段?
【发布时间】:2010-11-20 05:08:55
【问题描述】:

我想知道是否已经有一种方法可以在 Django 中创建一个单独的 autoincrement-ID-per-user 字段?

基本上,我存储了许多相关模型,并且我需要生成的 ID 是 每个用户自动递增的。

我不想更改 id 的工作方式,只需要一个我可以添加的新字段,该字段是 unique=True per user

有什么建议(除了重写 save 并自己实现之外)?

【问题讨论】:

    标签: django django-models auto-increment


    【解决方案1】:

    不,没有这样的领域,但我想知道你为什么认为你需要它。 ID 确实仅供模型内部使用,您不必关心它是什么。

    例如,如果您想知道用户有多少相关项,那么您只需在相关查询集上使用count() 方法。如果您希望每个用户都具有唯一性,可以使用 unique_together 元属性。

    您能否举例说明每个用户唯一 ID 的用例?

    为响应 cmets 编辑:要从您提到的 URL 获取对象,您只需要这样做:

    myuser.myobject_set.all()[7]
    

    【讨论】:

    • 一个明显的用途可能是在网址中。您可能需要像 /username/asset/7/ 这样的 url,每个用户的 7 部分自动递增。
    • 我的用例正是@uswaretech 提到的:)
    猜你喜欢
    • 2016-02-28
    • 1970-01-01
    • 2014-05-19
    • 2022-11-01
    • 1970-01-01
    • 2021-06-13
    • 2011-12-15
    • 1970-01-01
    • 2010-10-06
    相关资源
    最近更新 更多