1、django 连接oracle数据库遇到的坑

需求:通过plsql建立的oracle数据表,想要django操作这几个表

python manage.py inspectdb table_name > model.py

生成都model.py 文件报错:

‘’django” # The error was: ORA-00904: "IDENTITY_COLUMN": invalid identifier

解决:

# database configuration settings.py
# 'oracle': {
# 'ENGINE': 'django.db.backends.oracle',
# 'NAME': 'host:port/service',
# 'USER': 'database_user',
# 'PASSWORD': 'database_password',
# } pip uninstall django
pip install Django==1.11.22 cd <django application> python manage.py inspectdb table_name > model.py 如果系统同时连接多个数据库,在创建数据库模型时需要添加database参数 python manage.py inspectdb --database xx table_name > model.py
其中 xx 是 setting文件中配置数据库的名字,DATABASE列表元素的第一层数值

pip uninstall django pip install Django==2.2.4

2、django服务直接放到centos中运行(不借助任何代理服务)

通过python manage.py runserver 0.0.0.0:8008 启动,在远程是无法telnet 127.0.0.1 8000 通过的

需要python manage.py runserver 0.0.0.0:8008,远程才可以telnet 127.0.0.1 8000

虽然是很小的问题,可是如果不清楚的话也会困扰一阵,所以这里说明一下

3、django连接mysql数据库遇到的坑

通过pymysql 驱动连接mysql时会报错:

django2.2/mysql ImproperlyConfigured: mysqlclient 1.3.13 or newer is required; you have 0.9.3

原因同样是django版本的问题

解决:

第一种:
django降到2.1.4版本就OK了

第二种(仍使用django 2.2版本):

#找到Python环境下 django包,并进入到backends下的mysql文件夹
cd /opt/anaconda3/envs/envAGC_Mini/lib/python3.6/site-packages/django/db/backends/mysql

#文件列表如下

# 找到base.py文件,注释掉 base.py 中如下部分(35/36行)
if version < (1, 3, 3):
raise ImproperlyConfigured("mysqlclient 1.3.3 or newer is required; you have %s" % Database.__version__)

此时仍会会报错,报错信息如下:

AttributeError: ‘str’ object has no attribute ‘decode’

#找到operations.py文件(146行),将decode改为encode
#linux vim 查找快捷键:?decode
if query is not None:
query = query.decode(errors=‘replace‘)
return query
#改为
if query is not None:
query = query.encode(errors=‘replace‘)
return query

OK~ 不再报错

django 项目开发及部署遇到的坑的更多相关文章

  1. django项目上线环境部署

    django项目上线环境部署 第一步 安装python虚拟环境 1 安装虚拟环境virtualenv 2 安装virtualenvwrapper工具 3 确认virtualenvwrapper.sh脚 ...

  2. PyCharm Django项目开发的调试方法

    下面介绍两种PyCharm Django项目开发的调试方法: 方法一: 1. 使用PyCharm 自带的django项目Debug工具, 当然前提条件是django项目环境已经搭建好了. 2. 在代码 ...

  3. Django项目开发,XSS攻击,图片防盗链,图片验证码,kindeditor编辑器

    目录 一.Django项目开发 1. 项目开发流程 2. auth模块的补充 (1)django的admin可视化管理页面 (2)将admin可视化管理页面的模型表显示成中文 (3)auth模块的用户 ...

  4. Django项目开发-小技巧

    当你开发完一个Django项目之后肯定要吧他丢到服务器让跑起来,但是你在自己的环境下安装了好多的包,是不是在服务器中也要一个个的安装了, pip freeze > read.txt #这条命令会 ...

  5. jenkins+supervisor实现django项目的自动部署(ubuntu)

    没有安装supervisor的话首先安装supervisor, apt install upservisor 安装supervisor大概率会出现问题,不推荐,最好是用pip 安装, 注意python ...

  6. 记Spring搭建功能完整的个人博客「Oyster」全过程[其二] Idea中Maven+SpringBoot多模块项目开发的设计和各种坑(模块间依赖和打包问题)

    大家好嘞,今天闲着没事干开写写博客,记录一下Maven+SpringBoot的多模块设计和遇到的坑. 多模块设计 简单说明一下截止目前的需求: 需要RESTful API:对文章.标签.分类和评论等的 ...

  7. Django项目开发实例之我的博客

    1.开发环境 2.创建virtualenv 3.安装相关包 Django Pillow 4.创建项目 添加应用: 5.设置静态文件和模板 6.运行测试 参考(http://www.cnblogs.co ...

  8. 那些年,我们在Django web开发中踩过的坑(一)——神奇的‘/’与ajax+iframe上传

    一.上传图片并在前端展示 为了避免前端整体刷新,我们采用ajax+iframe(兼容所有浏览器)上传,这样用户上传之后就可以立即看到图片: 上传前: 上传后: 前端部分html: <form s ...

  9. Django项目开发

    1.django中Form验证.CSRF.Cookie.Session.Model操作数据库 2.django介绍&快速实现简单留言系统 3.django开发在线教育网站

随机推荐

  1. redis延时监控

    一. slow log慢查询日志 Redis监控工具,命令和调优 slowlog是 Redis 用来记录查询执行时间的日志系统.slowlog-log-slower-than设置慢操作的阈值,单位是微 ...

  2. app支付宝充值

    首先支付宝需要开通app 支付 然后登录支付宝 ,点击合作伙伴, 进入 开放平台,申请一个应用. 下载支付宝开放平台助手, 生成应用公钥,点击上传 设置进入之前申请的应用,支付宝自动生成支付宝公钥,设 ...

  3. 负载均衡 | Nginx+Tomcat 动静分离实现负载均衡

    0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 基本配置这个文件,就可以实现负载了.但是里面的各 ...

  4. 1.springboot启动流程

    SpringBoot版本:2.1.2.RELEASE 1.maven <parent> <groupId>org.springframework.boot</groupI ...

  5. linux下如何查看某个容器的详细信息?

    答: 使用docker inspect <CONTAINER ID>即可

  6. 在matlab中读取trc文件

    用matlab的load()函数 1.相对路径读法(将文件放入'MATLAB\bin'目录): a = load('aizhenjiang_g10.trc') 2.绝对路径读法(任何位置) a = f ...

  7. JVM 内存溢出(转载~)

    对于JVM的内存写过的文章已经有点多了,而且有点烂了,不过说那么多大多数在解决OOM的情况,于此,本文就只阐述这个内容,携带一些分析和理解和部分扩展内容,也就是JVM宕机中的一些问题,OK,下面说下O ...

  8. 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-2.微信扫一扫功能开发前期准备

    笔记 2.微信扫一扫功能开发前期准备         简介:讲解微信扫一扫功能相关开发流程和资料准备              1.微信开放平台介绍(申请里面的网站应用需要企业资料)          ...

  9. Linux服务器端使用tcpdump抓redis报文

    yum update yum install tcpdump tcpdump host -i ens192 -w /tmp/redis-zsetcapture.cap 其中ens192是网卡名, /t ...

  10. Linux命令集锦:ssh命令

    保持连接配置服务端SSH总是被强行中断,导致效率低下,可以在服务端配置,让 server 每隔30秒向 client 发送一个 keep-alive 包来保持连接: vim /etc/ssh/sshd ...