xadmin通过邮件重置密码发生代码运行错误,请问该如何修改

来源:8-2 更加强大的后台管理系统-xadmin的配置

cmcc_hlhero

2019-07-17

在settings.py文件中配置了EMAIL服务器信息后,在xadmin的登录页面点击“忘记了您的密码或用户名”超链接能够正常的收到密码重置的邮件通知,邮件内容为“因为你要求重置 127.0.0.1:8000 上的账户密码, 所以收到了这封邮件.
请访问该页面并选择一个新密码:
http://127.0.0.1:8000/xadmin/xadmin/password_reset/Ng-583-e9d8febec5c1401096e0/”
图片描述
点击这个链接后,系统页面会报错,提示“TypeError at /xadmin/xadmin/password_reset/Ng-583-e9d8febec5c1401096e0/
init() takes 1 positional argument but 4 were given
Request Method: GET
Request URL: http://127.0.0.1:8000/xadmin/xadmin/password_reset/Ng-583-e9d8febec5c1401096e0/
Django Version: 2.1.7
Exception Type: TypeError
Exception Value:
init() takes 1 positional argument but 4 were given
Exception Location: C:\Users\Administrator\PycharmProjects\expertmanage\extra_apps\xadmin\xadmin\plugins\passwords.py in do_view, line 90
Python Executable: C:\Users\Administrator\Envs\mxonline\Scripts\python.exe”
图片描述
感觉像是xadmin的源码兼容性有问题,请问老师这个问题该如何处理?

写回答

3回答

bobby

2019-07-21

最好使用我提供的在慕课网的git上的xadmin源码,这样如果xadmin有些小bug我还可以修复,不然官网的xadmin我无法修复

0
4
bobby
回复
涂大雄
加你了
2020-05-11
共4条回复

cmcc_hlhero

提问者

2019-07-19

我的django是2.1.7的版本,xadmin就是github上下载下来的官方版本。从报错信息来看应该是\xadmin\xadmin\plugins\passwords.py这个文件的这个函数def do_view(self, request, uidb36, token, *args, **kwargs):参数需要调整,不知道该怎么改了。就是如下登录界面

//img1.sycdn.imooc.com/szimg/5d31626f09a95a7003690258.jpg

点击“忘记了您的密码或用户名”。

请问bobby老师的版本会不会出现这个问题,如果不会的话我可以升级django的版本。不过我暂时怀疑是xadmin源码不兼容django2以上的版本造成的,但又不知道怎么修改

0
1
bobby
https://github.com/sshwsfc/xadmin/blob/django2/xadmin/plugins/passwords.py 你看看你的plugins中的password文件和这个是否一样如果不一样 拷贝这个源文件替换一下你的文件内容再试试
2019-07-21
共1条回复

bobby

2019-07-18

这个应该是xadmin的问题,你的xadmin是哪里下载的?你的djangob版本是2.2吧

0
0

Django+ xadmin 开发在线教育网站

一套通用的技术组合拳,助你解决大部分Python类网站后端问题

1911 学习 · 2149 问题

查看课程