在Django的上下文处理器中设置自定义用户对象

普涅特

我有一个自定义的用户模型。成功登录后,我将在HttpResponseRedirect和模板中获取匿名用户。如何获得登录用户?

登录视图:

class LoginFormView(View):
    form_class = UserLoginForm
    user_model = get_user_model()
    template_name = 'account/login.html'

    def get(self, request, *args, **kwargs):
        form = self.form_class
        return render(request, self.template_name, {'form':form})

    def post(self, request, *args, **kwargs):
        email = request.POST['email']
        password = request.POST['password']
        user = authenticate(email=email, password=password)
        if user is not None:
            if user.is_active:
                login(request, user)
                return HttpResponseRedirect(reverse('home'))
        else:
            messages.error(request, 'Please enter correct email and password!')
            return HttpResponseRedirect(request.META.get('HTTP_REFERER', '/'))
阿拉斯代尔

如果您启用请求模板上下文处理器,则可以使用来访问模板中的用户{{ request.user}}

其次,请确保您要导入的是登录功能而不是登录视图它应该是:

from django.contrib.auth import login

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在django-admin页面中禁用django上下文处理器

来自分类Dev

如何知道从哪个视图调用Django上下文处理器?

来自分类Dev

Django:如何声明项目范围的模板上下文处理器?

来自分类Dev

将值从装饰器传递到Django中的上下文处理器

来自分类Dev

Django上下文处理器和具有多个应用程序的Django项目

来自分类Dev

Django从1.7升级到1.8:需要上下文处理器中的变量

来自分类Dev

我可以在Django模板上下文处理器中访问url kwargs吗?

来自分类Dev

在Spring Boot中何时使用自定义上下文路径而不是根上下文

来自分类Dev

在应用程序模板中启用上下文处理器

来自分类Dev

使用Django上下文处理器即时获取特定的用户字段?

来自分类Dev

如何在jenkinsfile中为docker.build设置自定义上下文

来自分类Dev

在Canvas中单击形状(fabric.js的对象)时显示自定义上下文菜单

来自分类Dev

如何在Xubuntu XFCE Thunar文件管理器中自定义文件上下文菜单?

来自分类Dev

Django上下文处理器“ AnonymousUser”对象不可迭代

来自分类Dev

Django上下文处理器-'str'对象不可调用

来自分类Dev

在Windows资源管理器中自定义Winrar上下文菜单处理程序

来自分类Dev

从自定义验证器中的验证上下文的基本类型中获取价值

来自分类Dev

Django上下文处理器似乎未在非调试模式下运行

来自分类Dev

如何知道从哪个视图调用Django上下文处理器?

来自分类Dev

开发模板上下文处理器时出错

来自分类Dev

TypeScript中的JsTree自定义上下文菜单

来自分类Dev

为什么此自定义身份用户上下文不能持久存在于MVC中?

来自分类Dev

将自定义删除处理程序贡献给项目浏览器上下文菜单

来自分类Dev

使用Django上下文处理器即时获取特定的用户字段?

来自分类Dev

在Canvas中单击形状(fabric.js的对象)时显示自定义上下文菜单

来自分类Dev

django模板上下文处理器设置在Django 1.10中的哪里放置

来自分类Dev

Django 编写自定义上下文处理器

来自分类Dev

将此上下文作为自定义验证器中的参数传递

来自分类Dev

Django - 来自上下文处理器的变量在部署时未更新但在本地工作

Related 相关文章

  1. 1

    在django-admin页面中禁用django上下文处理器

  2. 2

    如何知道从哪个视图调用Django上下文处理器?

  3. 3

    Django:如何声明项目范围的模板上下文处理器?

  4. 4

    将值从装饰器传递到Django中的上下文处理器

  5. 5

    Django上下文处理器和具有多个应用程序的Django项目

  6. 6

    Django从1.7升级到1.8:需要上下文处理器中的变量

  7. 7

    我可以在Django模板上下文处理器中访问url kwargs吗?

  8. 8

    在Spring Boot中何时使用自定义上下文路径而不是根上下文

  9. 9

    在应用程序模板中启用上下文处理器

  10. 10

    使用Django上下文处理器即时获取特定的用户字段?

  11. 11

    如何在jenkinsfile中为docker.build设置自定义上下文

  12. 12

    在Canvas中单击形状(fabric.js的对象)时显示自定义上下文菜单

  13. 13

    如何在Xubuntu XFCE Thunar文件管理器中自定义文件上下文菜单?

  14. 14

    Django上下文处理器“ AnonymousUser”对象不可迭代

  15. 15

    Django上下文处理器-'str'对象不可调用

  16. 16

    在Windows资源管理器中自定义Winrar上下文菜单处理程序

  17. 17

    从自定义验证器中的验证上下文的基本类型中获取价值

  18. 18

    Django上下文处理器似乎未在非调试模式下运行

  19. 19

    如何知道从哪个视图调用Django上下文处理器?

  20. 20

    开发模板上下文处理器时出错

  21. 21

    TypeScript中的JsTree自定义上下文菜单

  22. 22

    为什么此自定义身份用户上下文不能持久存在于MVC中?

  23. 23

    将自定义删除处理程序贡献给项目浏览器上下文菜单

  24. 24

    使用Django上下文处理器即时获取特定的用户字段?

  25. 25

    在Canvas中单击形状(fabric.js的对象)时显示自定义上下文菜单

  26. 26

    django模板上下文处理器设置在Django 1.10中的哪里放置

  27. 27

    Django 编写自定义上下文处理器

  28. 28

    将此上下文作为自定义验证器中的参数传递

  29. 29

    Django - 来自上下文处理器的变量在部署时未更新但在本地工作

热门标签

归档