Django2.1.1与xadmin0.6.0遇到的坑
BlueMiaomiao关注4人评论11188人阅读2018-09-23 12:17:56
(1)django2.0把from django.core.urlresolvers修改成了django.urls
异常信息:
ModuleNotFoundError: No module named 'django.core.urlresolvers'
解决方案:
修改site-packages\xadmin-0.6.1-py3.6.egg\xadmin\models.py
将from django.core.urlresolvers import NoReverseMatch, reverse修改为from django.urls import NoReverseMatch, reverse
(2)django2.1.1中需要给外键指定on_delete参数
异常信息:
TypeError: __init__() missing 1 required positional argument: 'on_delete'
解决方案:
把content_type = models.ForeignKey(ContentType)修改为content_type = models.ForeignKey(ContentType,on_delete=models.CASCADE)
(3)django2.1.1的 forms表单初始化仅一个参数
异常信息:
TypeError: __init__() takes 1 positional argument but 6 were given
解决方案:
把forms.Field.__init__(self, required, widget, label, initial, help_text, *args, **kwargs) 修改成forms.Field.__init__(self)
(4)Settings缺少MIDDLEWARE_CLASSES属性,django2.1.1把MIDDLEWARE_ClASSES改成MIDDLEWARE了
异常信息:
AttributeError: 'Settings' object has no attribute 'MIDDLEWARE_CLASSES'
解决方案:
把:
if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE_ClASSES:
改成:
if settings.LANGUAGES and 'django.middleware.locale.LocaleMiddleware' in settings.MIDDLEWARE:
(5)django-formtools导入失败,需要更新django-formtools了
异常信息:
ModuleNotFoundError: No module named 'django.contrib.formtools'
解决方案:
pip uninstall django-formtools
pip install django-formtools==2.1
(6)提示导入QUERY_TERMS报错
异常信息:
ImportError: cannot import name 'QUERY_TERMS'
解决方案:
在Django2.0版本中把from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS修改为:
from django.db.models.sql.query import LOOKUP_SEP
from django.db.models.sql.constants import QUERY_TERMS
在Django2.1.1版本中把from django.db.models.sql.query import LOOKUP_SEP, QUERY_TERMS修改为:
from django.db.models.sql.query import LOOKUP_SEP, Query

Django2.1.1与xadmin0.6.0遇到的坑的更多相关文章

  1. Django2.1.1与xadmin0.6.0遇到的坑(一)

    (1)django2.0把from django.core.urlresolvers修改成了django.urls 异常信息: ModuleNotFoundError: No module named ...

  2. postman接口测试工具3.0版本的坑

    今天用postman接口测试工具3.0版本被坑,找了半天,原来postman这个新版本有个坑啊 下面的get参数,第一行不管你填不填,都是无效的,可能是postman的一个bug吧

  3. UiAutomator2.0升级填坑记

    UiAutomator2.0升级填坑记 SkySeraph May. 28th 2017 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点:www.sk ...

  4. 问题定位 | Peronca Xtrabackup 8.0近日踩坑总结 - xtrabackup 2.4和8.0区别

    目录 前言 适配过程中遇到的坑 xtrabackup 2.4和8.0区别 问题定位 坑一:MySQL 8.0 + Semi-Sync 重建问题 坑二:MySQL 8.0 + Group-Replica ...

  5. Android 5.0 到 Android 6.0 + 的深坑之一 之 .so 动态库的适配

    (原创:http://www.cnblogs.com/linguanh) 目录: 前序 一,问题描述 二,为何会如此"无情"? 三,目前存在该问题的知名SDK 四,解决方案,1 对 ...

  6. 微信微信JS-SDK 6.0.2 填坑笔记

    0.为什么以前不需要配置这么麻烦就可以修改分享description 等信息,但是现在不行了. 因为6.0.2版本之前没有做权限验证,所以config都是ok,但这并不意味着你config中的签名是O ...

  7. 【转】Android M(6.0) 权限爬坑之旅

    原文网址:https://yanlu.me/android-m6-0-permission-chasm/ 有一篇全面介绍Android M 运行时权限文章写的非常全面:Android M 新的运行时权 ...

  8. Android M(6.0) 权限爬坑之旅

    坑一:用Android5.0编译的apk,在Android6.0上运行完全没有问题. 在Android6.0以上才需要在运行时请求权限,在旧Android版本上保留原有逻辑,安装时授予权限. 用旧版本 ...

  9. Swift3.0已出坑-适配iOS10,项目迁移Swift3.0问题总结。

    http://www.jianshu.com/p/27fd2a2b32e4 Yes表示swift版本为2.3 NO表示swift版本为3.0

随机推荐

  1. 使用zookeeper作为分布式锁以及设计一种通知监听模式

    1.创建实例/** * 初始化单例的便捷方法 */ public static void init() { getInstance(); } /** * 获取单例 * @return */ publi ...

  2. Anaconda Spyder 常用快捷键

    Ctrl+1 注释.取消注释 Ctrl+4/5 块注释 / 取消块注释 Ctrl+D 删除一行 Ctrl+L 转到行 Ctrl+G/左键 查找函数定义 F9 运行选中代码 F12 断点 / 取消断点 ...

  3. SpringCloud组件及功能介绍

    1.什么是SpringClould?    SpringCloud是一个基于SpringBoot实现的微服务架构开发工具.它为微服务架构中涉及的配置管理.服务治理.断路器.智能路由.微代理.控制总线. ...

  4. php+lottery.js制作九宫格抽奖实例

    php+lottery.js制作九宫格抽奖实例,本抽奖功能效果表现好,定制方便简单,新手学习跟直接拿来用都非常不错,兼容IE.火狐.谷歌等浏览器. 引入抽奖插件lottery.js <scrip ...

  5. 201709-3 JSON查询

    问题描述 JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式,可以用来描述半结构化的数据.JSON 格式中的基本单元是值 (value),出于简化的目的本题 ...

  6. pandas字符串与时间序列的处理 str 与 dt

    一.str属性 pandas里的Series有一个str属性,通个这个属性可以调用一些对字符串处理的通用函数, 如:df['road'].str.contains('康庄大道')  会返回字符串里包含 ...

  7. mysql java jdbc 如何 update select

    2019年8月6日17:28:07 sql 不知道怎么写,也没去查,因为需求可能中途需要修改值,有点麻烦 直接用jdbc实现. 查询出来的值,直接根据update条件更新,写在一个方法里 public ...

  8. js修改当前页面地址栏参数

    利用HTML5 history新特性replaceState方法可以修改当前页面地址栏参数,示例代码: //选择日期后改变地址栏 var urlSearch = location.href; var ...

  9. 如何解决windows 80端口被占用的情况

    window下如果在安装某个软件或者启动tomcat时 会遇到80端口被占用的情况,通过命令 netstat -ano 查看端口被占用情况 找到占用80端口的进程ID,然后我们在任务管理器当中将这个进 ...

  10. django 中间键重定向

    1,定义和注册中间件 在注册的中间件中使用: from django.http import HttpResponseRedirect '''下面的书写方法会陷入死循环,所以必须加判断条件只调用一次' ...