python web求助大神
问题如图片:{:1_937:}
authenticate(username=username,password=password)
次方法官方文档也是这样写的呀,为什么返回值是个字段。而且HTML页面也得不到登录的值login(request, user),登录失败 你用 type(user) 获取它的类型。import 导入 这个文件, 你就可以自己查看他的属性了。你直接打印,他就是直接返回字符串的。 以前学python的时候也没看源码但是后来学java的时候,print里面会自动调用toString方法。。python是不是也是同样的道理? 247700432 发表于 2020-5-31 18:15
你用 type(user) 获取它的类型。import 导入 这个文件, 你就可以自己查看他的属性了。你直接打印,他 ...
{% if user.is_authenticated %}
<h3>欢迎您,{{ user.username }}</h3>
{% else %}
欢迎您,<a href="{% url 'accounts:user_login' %}">请登录</a>
{% endif %}
你好,但是我登录后,user.is_authenticated这个方法不会只想,直接显示请登录,这是什么原因呢 人生苦短丶 发表于 2020-5-31 18:45
以前学python的时候也没看源码但是后来学java的时候,print里面会自动调用toString方法。。python是不是 ...
我这个问题是前台明文登录账号+密码,用python校验数据库密文账号+密码的一个方法。然后执行登录,会在跳转的页面都保持这个账号的登录状态。 首先你得明白print的作用是什么,然后去理解一下类中__str__魔法方法的作用是什么,print如果是打印一个对象,其实是打印这个对象的__str__方法。所以你这个user对象通过效验后,实际代表的是zhangsan这个用户。而print他,则输出这个对象的__str方法的结果,也就是打印这个用户的username guguyuyu 发表于 2020-5-31 18:49
{% if user.is_authenticated %}
欢迎您,{{ user.username }}
{% else %}
我现在都是前后端分离了,我记得不太清楚了,django石油的前后文中间件。你登录后所有属性都放在了user中,你前段直接输出user就行,不要带user.is_authenticated
页:
[1]