Python 登录时将用户重定向到其seprate页面

Python 登录时将用户重定向到其seprate页面,python,django,python-3.x,Python,Django,Python 3.x,我正在创建一个django管理应用程序,其中有两种不同类型的用户。一个是管理员,另一个是简单用户。 问题是我不知道如何将这些用户重定向到他们自己的仪表盘。 例如,如果创建了管理员帐户的用户登录,则他/她应该会看到管理员仪表板。如果有一个简单用户帐户的用户登录,那么他/她一定不能看到管理仪表板。嘿,我现在没有时间帮你太多,但我要你检查这个Django类视图: 您可以执行以下操作: class RedirectView(RedirectView): def get_redirect_url(

我正在创建一个django管理应用程序,其中有两种不同类型的用户。一个是管理员,另一个是简单用户。 问题是我不知道如何将这些用户重定向到他们自己的仪表盘。
例如,如果创建了管理员帐户的用户登录,则他/她应该会看到管理员仪表板。如果有一个简单用户帐户的用户登录,那么他/她一定不能看到管理仪表板。

嘿,我现在没有时间帮你太多,但我要你检查这个Django类视图:

您可以执行以下操作:

class RedirectView(RedirectView):
    def get_redirect_url(self, *args, **kwargs):
        if self.request.user.is_admin():
            return reverse('admin_dashboard')
        else:
            return reverse('user_dashboard')
如果你需要额外的帮助,请告诉我,我稍后会帮助你。祝你好运

编辑:此外,您应该在AdminDashboard视图中检查用户是否具有管理员角色,否则返回403或404


嘿我理解Django类视图,但问题是我如何在登录时首先在用户和管理员之间实例化,然后如何将用户重定向到其特定视图。嗨!你能详细说明一下用户和管理员之间的实例化吗?我不明白你的意思。谢谢我问,为了重定向用户,首先我必须确定登录的用户类型,但现在我知道了。我以前错过了self.request.user.is_admin条件。如果我有一个基于函数的视图,还有一个疑问是request.user.u admin有效吗?谢谢嘿,很高兴你解决了!是的,它在基于函数的视图中工作得很好,只需确保您的函数有一个请求参数,如本例所示:def customviewrequest。