如何在django admin中过滤FK下拉值

时间:2018-12-26 13:32:14

标签: django django-models django-forms django-templates django-views

我只想在下拉列表中显示管理员和管理员角色。这是我的模型UserProfile和角色。

class UserProfile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    user_company = models.ForeignKey(Company, on_delete=models.CASCADE)
    user_role = models.ForeignKey(Roles, on_delete=models.CASCADE)


class Roles(models.Model):
    role_title = models.CharField(max_length=30)
    role_description = models.CharField(max_length=100)

1 个答案:

答案 0 :(得分:0)

如果在角色模型中存储了“管理员”和“经理”,请尝试:

UserProfile.objects.filter(Q(user_role__role_title='Admin'), Q(user_role__role_title='Manager'))

如果“管理员”存储在用户模型中,请尝试:

UserProfile.objects.filter(Q(user__is_superuser=True), Q(user_role__role_title='Manager'))