Django:如何在Django中培养经理

Django:如何在Django中培养经理,django,django-models,django-forms,django-views,Django,Django Models,Django Forms,Django Views,我是django的新手,正在从事一个我想成为经理和管理员的项目。我已经成为管理员,即超级用户,但我不知道如何才能成为经理 我曾试图成为一名经理,但这对我不起作用。 这是从中检测管理器的my views.py def login(request): if request.method =='POST': # print(request.POST) username = request.POST['username'] password = request.POST['pas

我是django的新手,正在从事一个我想成为经理和管理员的项目。我已经成为管理员,即超级用户,但我不知道如何才能成为经理

我曾试图成为一名经理,但这对我不起作用。 这是从中检测管理器的my views.py

def login(request):
if request.method =='POST':
    # print(request.POST)
    username = request.POST['username']
    password = request.POST['password']

    user = auth.authenticate(username=username, password=password)

    if user is not None:
        auth.login(request, user)
        print (user.has_perm('app.edit_task'))
        # return redirect('index')

        if user.is_superuser:
            return redirect('master')

        # elif user.has_perm('app.edit_task'):
        #     return redirect('manager')
        elif user.is_staff:
            return redirect('manager')
        else:
            return redirect('index')

    else:
        messages.error(request, 'Invalid Credentials')
        return redirect('login')    
else: 
    return render(request, 'vadash/sign-in.html')
这是我的模特

class manager(models.Model):
name = models.CharField(max_length= 500)
designation = models.CharField(max_length= 500)
class Meta:
    permissions = [
        ("edit_task", "can edit the task"),
    ]

def __str__(self):
    return self.name


class Create_Team(models.Model):
first_name = models.CharField(max_length= 50)
last_name = models.CharField(max_length= 50)
company_name = models.CharField(max_length= 100)
address = models.CharField(max_length= 1000)
state = models.CharField(max_length= 100)
status = models.CharField(max_length= 30)
managers = models.ForeignKey('manager', on_delete = models.SET_NULL, null=True)

我想知道我如何才能成为一名管理者,当我成为一名管理者时,它也会反映在Create_团队的数据库中。

如果你想使用django auth系统创建不同的用户类型,你可以使用curstom用户模型创建超级用户。请参阅。

如果有帮助,请检查此网站,而且此网站对于从头开始学习django非常有用


ps:您可能需要滚动查看答案

您的manager类应该继承自AbstractBaseUser,而不是models.Model。请你为我写一些代码,以便我能更好地理解。评论中提供的链接有一个你想要的完整示例。只需更改代码以满足您的需要。有关更多信息,您还可以参考。