这篇博客主要总结的学习Django框架中,遇到的报错如何去解决问题:

1、decimal.InvalidOperation:

decimal.InvalidOperation: [<class 'decimal.InvalidOperation'>]

在最后一行出现这样的报错:

decimal.InvalidOperation: [<class 'decimal.InvalidOperation'>]

这个报错其实是数据库的数据长度超过了原本的长度

在models中定义类型是DecimalField中的(max_digits的范围,decimal_places=小数的长度)

分析:

因为max_digits的长度包括decimal_places的长度,数据库的数据经过运算超越了原本的最大长度,就会出现这种报错!

解决方法:

就是max_digits的长度增加,就能解决这个异常! (6月22日)

2、no such table: django_session

no such table: django_session

这个报错其实很简单的报错,意思就是数据库没有django_session,这个报错还是很好解决的。

解决方法:

就是在数据库中创建表,在pycharm 中的Terminal 中输入两个命令:

python manage makemigrations  先把要修改的内容登记到小本本上

python manage migrate   在数据库中创建表 这生成的是django的默认的表格

表格创建好,这个报错就能解决了。(6月26日)

3、 出现莫名其妙的 app01

我项目中的app名字并不是app01,可是运行python manage.py makemigrations的时候总是提示app01不是已安装的app

Applying admin.0003_auto_20180701_0233...Traceback (most recent call last):  
FiApplying admin.0003_auto_20180701_0233...Traceback (most recent call last): Field ...

解决办法:

找到自己的python环境下的site-packages/django/contrib/admin/migrations,把里面的py文件全删掉即可。

4、django.core.exceptions.FieldDoesNotExist: model has no field named <id>

使用了自定义的auth表,结果建表的时候提示admin找不到某个字段

解决办法:

找到自己的python环境下的site-packages/django/contrib/admin/migrations,把里面的py文件全删掉即可。

5、点击页面的按钮绑定AJAX提交数据但是后端收不到任何数据

这种情况一般是form表单中使用了 <button>提交</button>按钮,但是<button>< button/>按钮中没有明确指定type="button"。

解决办法:

使用AJAX提交数据的时候,提交数据的按钮可以使用如下方式:

1. 使用最保险的input标签, 并且指定type类型为button

<form>
...
<input type="button" value="提交">
</form>

2. 既然使用ajax提交数据就没必要再写form标签。

直接用div包裹获取用户输入的input标签即可。

3. 使用button按钮的时候,明确指定type类型为button, type一定不能省!!!

<button type="button">提交</button>

6、ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js

这个问题是用Google的浏览器的问题,配置jQuery的URL

django-debug-toolbar 默认使用的Google的地址,默认配置如下:

JQUERY_URL=‘//ajax.googleapis.com/ajax/libs/jquery/2.2.4/jquery.min.js’

解决方法:

在国内Google无法加载默认的jQuery的URL,我们就在settings.py中配置一下,我们特意选用了和原作者相同版本的jQuery:

DEBUG_TOOLBAR_CONFIG={
'JQUERY_UPL':'//cdn.bootcss.com/jquery/2.2.4/jquery.min.js'
}

也可以在Django项目中使用了jquery的话就可以直接将这一设置为空,那么django-debug-toolbar就会使用你项目中用到的jquery:

DEBUG_TOOLBAR_CONFIG={
'JQUERY_URL':'',
}
#不用改源码,在settings.py中加这个配置项就可以

python3 Django框架报错(备忘录)的更多相关文章

  1. ubuntu,装完PYTHON3 pip3 install 报错

    ubuntu,装完PYTHON3 pip3  install 报错CalledProcessError: Command 'lsb_release -a' returned non-zero exit ...

  2. Python3 pip命令报错:Fatal error in launcher: Unable to create process using '"'

    Python3 pip命令报错:Fatal error in launcher: Unable to create process using '"' 一.问题 环境:win7 同时安装py ...

  3. go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量

    go语言,golang学习笔记3 用命令下载框架报错问题解决 设置环境变量 下载安装:go get github.com/astaxie/beego 首页 - beego: 简约 & 强大并存 ...

  4. python---补充django中文报错(1),Django2.7使用sys.setdefaultencoding('utf-8'),以及使用reload(sys)原因

    SyntaxError at /blog/ news/story Non-ASCII character , but no encoding declared; see http://python.o ...

  5. Python3.x:报错POST data should be bytes, an iterable of bytes

    Python3.x:报错POST data should be bytes, an iterable of bytes 问题: python3.x:报错 POST data should be byt ...

  6. 在centos6.7通过源码安装python3.6.7报错“zipimport.ZipImportError: can't decompress data; zlib not available”

    在centos6.7通过源码安装python3.6.7报错: zipimport.ZipImportError: can't decompress data; zlib not available 从 ...

  7. django运行报错TypeError: object supporting the buffer API required

    运行django项目报错:TypeError: object supporting the buffer API required 解决方案: 将settings.py中数据库的密码改成字符串格式 源 ...

  8. python2中的unicode()函数在python3中会报错:

    python2中的unicode()函数在python3中会报错:NameError: name 'unicode' is not defined There is no such name in P ...

  9. Django独有报错的原因和解决

    RuntimeError at /login You called this URL via POST, but the URL doesn't end in a slash and you have ...

随机推荐

  1. git 的证书重新设置,以及如何让git 记住提交的用户名和密码

    1.git 的证书的重新设置的命令是: git config --system --unset credential.helper 2.保存git的用户名和密码注意这里是全局保存 git config ...

  2. TypeScript+Vue初体验Demo

    github: https://github.com/lanleilin/Typescript-Vue-Demo

  3. Java并发(11)- 有关线程池的10个问题

    引言 在日常开发中,线程池是使用非常频繁的一种技术,无论是服务端多线程接收用户请求,还是客户端多线程处理数据,都会用到线程池技术,那么全面的了解线程池的使用.背后的实现原理以及合理的优化线程池的大小等 ...

  4. Spring - IoC(3): Bean 实例的创建方式

    创建一个 Bean 实例对象的方法通常有如下方式: 调用构造器创建 Bean 实例 调用静态工厂方法创建 Bean 实例 调用实例工厂方法创建 Bean 实例 使用构造器创建 Bean 实例 XML ...

  5. 51nod 1254 最大子段和 V2 ——单调栈

    N个整数组成的序列a[1],a[2],a[3],…,a[n],你可以对数组中的一对元素进行交换,并且交换后求a[1]至a[n]的最大子段和,所能得到的结果是所有交换中最大的.当所给的整数均为负数时和为 ...

  6. mongodb的集合操作

    MongoDB 创建集合 1.手动创建: 语法格式: db.createCollection(name, options) 参数说明: name: 要创建的集合名称 options: 可选参数, 指定 ...

  7. Python学习笔记 - day5 - 文件操作

    Python文件操作 读写文件是最常见的IO操作,在磁盘上读写文件的功能都是由操作系统提供的,操作系统不允许普通的程序直接操作磁盘(大部分程序都需要间接的通过操作系统来完成对硬件的操作),所以,读写文 ...

  8. 利用os、hash模块生成目录下所有文件的md5

    hashlib用于对字符串或者文件进行加密. 使用方法1: hashlib.md5('str').hexdigest() 使用MD5对str进行加密,使用hexdigest(),16进制的方式打印   ...

  9. Python小程序之动态修改Haproxy配置文件

    需求如下: 1.动态的查询添加删除haproxy节点信息 2.程序功能:add(添加).Del(删除).Query(查询) 3.添加时实例字符串为:  {'backend': 'www.oldboy. ...

  10. mysql导入数据库出现:Incorrect string value: '\xE7\x82\xB9\xE9\x92\x9F' for column 'chinese' at row 1

    mysql导入数据库出现:Incorrect string value: '\xE7\x82\xB9\xE9\x92\x9F' for column 'chinese' at row 1 使用 sho ...