Django - первичный ключ из нескольких столбцов - PullRequest
0 голосов
/ 10 сентября 2010

Я хотел бы реализовать многоколоночные первичные ключи в django.

Я пытался реализовать AutoSlugField (), который объединяет значения моих столбцов (foreignkey / date) ...

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 к слагу ... но он создает новый экземпляр с "-1" "-2" ... и обновление НЕ производится вообще ...

Я что-то пропустил?

Спасибо

Йоан

1 Ответ

0 голосов
/ 11 сентября 2010

Вот объяснение использованного мной автослагфилда.

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

С уважением,

Йоан

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...