- 判断用户名密码ApiManager》views》login接口
```python
def login(request):
if request.method == 'POST':
username = request.POST.get('account')
password = request.POST.get('password')
#对比提交的数据与数据库中的数据,判断数量为1
if UserInfo.objects.filter(username__exact=username).filter(password__exact=password).count() == 1:
type = "登录"
text = '登录成功'
# 获取数据库查询结果的第一个对象
user_obj = UserInfo.objects.filter(username=username, password=password).first()
# 调用init_permission,初始化权限
init_permission(request, user_obj)
print("调用init_permission,初始化权限")
# 设置session信息
request.session["login_status"] = True
request.session["now_account"] = username
LogInfo_opt.insert_log(username, type, text)
#重定向到登录界面
return HttpResponseRedirect('/api/index/')
```
注释:django的filter方法是从数据库的取得匹配的结果,返回一个对象列表,如果记录不存在的话,它会返回[]。
- 本地工程登录报错用户名密码错误
==问题原因==:Django框架自带登录接口关联的数据库表格是auth_user,创建超级用户后存入该张表格,实际公司接口平台框架上登录接口关联数据库表已做更改为user_info,因此使用超级用户去登录平台会报错,但是登录admin端可以成功。
==解决方法==:在user_info表中插入登录用户信息
Django+python平台登录报错用户名密码错误
最新推荐文章于 2023-08-22 23:20:03 发布