【问题标题】:Django - Multiple columns primary keyDjango - 多列主键
【发布时间】:2011-04-10 16:27:44
【问题描述】:

我想在 django 中实现多列主键。

我尝试实现一个 AutoSlugField() 来连接我的列值(外键/日期)...

models.py:

class ProductProduction(models.Model):
    enterprise = models.ForeignKey('Enterprise')
    product = models.ForeignKey('Product')
    date = models.DateTimeField()
    count = models.IntegerField()
    slug = AutoSlugField(populate_from=
    lambda instance: instance.enterprise.username + '-' + instance.product.name + '-' + str(date))

当我传递以下参数时:

 - 'Megacorp','robot','09/10/2010',5 => slug = 'Megacorp-robot-09/10/2010'
... the next time in pass the triplet, a new value has been inserted :
 - 'Megacorp','robot','09/10/2010',10 => slug = 'Megacorp-robot-09/10/2010' 
        => same slug value => insert ????

我尝试将 primary_key=True 参数添加到 slug...但它使用“-1”“-2”创建新实例...并且根本没有进行更新...

我错过了什么吗?

谢谢,

【问题讨论】:

标签: python django django-models foreign-keys composite-primary-key


【解决方案1】:

这是我使用的autoslugfield的解释。

http://packages.python.org/django-autoslug/fields.html

问候,

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-30
    • 2019-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-03
    相关资源
    最近更新 更多