diff --git a/greenmine/base/users/fixtures/initial_role.json b/greenmine/base/users/fixtures/initial_role.json index 31df5670..4809773a 100644 --- a/greenmine/base/users/fixtures/initial_role.json +++ b/greenmine/base/users/fixtures/initial_role.json @@ -536,7 +536,8 @@ ] ], "name": "Back", - "slug": "back" + "slug": "back", + "order": 40 } }, { @@ -1076,7 +1077,8 @@ ] ], "name": "Front", - "slug": "front" + "slug": "front", + "order": 30 } }, { @@ -1616,7 +1618,8 @@ ] ], "name": "UX", - "slug": "ux" + "slug": "ux", + "order": 10 } }, { @@ -2156,7 +2159,8 @@ ] ], "name": "Design", - "slug": "design" + "slug": "design", + "order": 20 } } ] diff --git a/greenmine/base/users/models.py b/greenmine/base/users/models.py index 8ffe1233..f1637600 100644 --- a/greenmine/base/users/models.py +++ b/greenmine/base/users/models.py @@ -30,17 +30,18 @@ class User(WatcherMixin, AbstractUser): class Role(models.Model): name = models.CharField(max_length=200, null=False, blank=False, - verbose_name=_('name')) + verbose_name=_('name')) slug = models.SlugField(max_length=250, unique=True, null=False, blank=True, - verbose_name=_('slug')) - permissions = models.ManyToManyField('auth.Permission', - related_name='roles', - verbose_name=_('permissions')) + verbose_name=_('slug')) + permissions = models.ManyToManyField('auth.Permission', related_name='roles', + verbose_name=_('permissions')) + order = models.IntegerField(default=10, null=False, blank=False, + verbose_name=_("order")) class Meta: - verbose_name = u'role' - verbose_name_plural = u'roles' - ordering = ['slug'] + verbose_name = 'role' + verbose_name_plural = 'roles' + ordering = ['order', 'slug'] def __str__(self): return self.name