Django自定义默认组模型

时间:2018-03-20 10:09:39

标签: python django models

我对Django很新,我想根据自己的要求自定义Django的默认Group模型,

默认django的群组模型如下所示:

class Group(models.Model):
    name = models.CharField(_('name'), max_length=80, unique=True)
    permissions = models.ManyToManyField(
        Permission,
        verbose_name=_('permissions'),
        blank=True,
    )

我想添加一个新字段并将name字段和新字段作为一个复合主键。

无论如何这可以做到吗?

任何建议将不胜感激。 感谢

1 个答案:

答案 0 :(得分:1)

以下是解决问题的一种方法:

from django.contrib.auth.models import Group


# inherit from Group instead of copy the code...
class Group(Group):
    new_field =  = models.CharField(
        verbose_name=('new-field'),
        max_length=31,
    )

    class Meta:
        indexes = [
            models.Index(fields=['last_name', 'first_name'], name='mixed_idx'),
        ]

Read more关于indexs选项。 (别名index_together)。