【发布时间】:2018-12-10 01:45:09
【问题描述】:
我有以下想法。一个用户可以在多个公司。用户在他或她所在的每个公司都有不同的权限。 下面的示例不起作用,因为一个用户始终拥有相同的权限。
我应该如何设置我的用户模型,让一个用户在每家公司拥有不同的权限?
这就是我到目前为止所尝试的:
class User(AbstractUser):
hourly_wage = models.DecimalField(decimal_places=2, max_digits=6, default=8.50)
class Meta:
permissions = (("is_general", "Can add people to his company and see everything"),
("is_captain", "Can add/edit/delete everything"),
("is_staff", "Can add/edit/delete jobs"),
("is_programmer", "Can do what he or she wants to do"))
def clean(self):
self.username = self.username.lower()
class Company(models.Model):
name = models.CharField(max_length=80)
slug = models.SlugField(unique=True)
users = models.ManyToManyField(User, related_name="companies")
class Meta:
verbose_name_plural = "companies"
【问题讨论】:
标签: django django-models user-permissions django-users