这篇博客主要总结的学习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. 安卓topbar编码实战

    1.先在res->value下新建attrs.xml文件 <?xml version="1.0" encoding="utf-8"?> < ...

  2. linux启动一个web项目时验证码不能出现的问题的解决

    解决方法: 在tomcatcatalina.sh中搜索cygwin=false,然后在它的上面加上这句话JAVA_OPTS='-Djava.awt.headless=true' 具体参考如下图片: 然 ...

  3. Install Rancher server

    1.pre-requirement: sudo nmtui # sudo hostnamectl set-hostname <hostname> $ sudo hostnamectl se ...

  4. ContenOS 安装配置 rpm 版本 Jenkins

    软件准备: jenkins-2.7.4-1.1.noarch.rpm java环境 安装jenkins: [root@localhost modules]# rpm -ih jenkins-2.7.4 ...

  5. ()()()()x()=()()()()填1-9数字

    /** Function: ()()()()x()=()()()() Developer: Date: */ #include "iostream" #include " ...

  6. HDU 1877 又一版 A+B(进制转换)

    看了http://lovnet.iteye.com/blog/1690276的答案 好巧妙的方法 递归实现十进制向m进制转换 #include "stdio.h" int m; v ...

  7. 膨胀、腐蚀、开、闭(matlab实现)

    膨胀.腐蚀.开.闭运算是数学形态学最基本的变换. 本文主要针对二值图像的形态学 膨胀:把二值图像各1像素连接成分的边界扩大一层(填充边缘或0像素内部的孔): B=[0 1 0      1 1 1   ...

  8. 02-更改窗口的根控制器 Demo示例程序源代码

      源代码下载链接:02-更改窗口的根控制器.zip18.0 KB // MJAppDelegate.h // //  MJAppDelegate.h //  02-更改窗口的根控制器 // //  ...

  9. golang consistent hash 菜鸟分析

    一直找集群的算法,刚好golang上面有一个适合.下面作为菜鸟来分析一下 // Copyright (C) 2012 Numerotron Inc. // Use of this source cod ...

  10. python学习笔记 async and await

    用asyncio提供的@asyncio.coroutine可以把一个generator标记为coroutine类型,然后在coroutine内部用yield from调用另一个coroutine实现异 ...