解决运行django程序出错问题 'str'object has no attribute'_meta'

如下所示:

报错原因是传入的是类对象,可你传进的参数是字符串,找到传参的位置改过来即可

充知识:'dict' object has no attribute 'has_key' 解决办法

最近开始学习Python,安装上最新的Python3.6.5 在使用django的时候 出现如下错误

‘dict' object has no attribute 'has_key'

保留犯罪现场:

犯罪现场2:

查阅资料发现,Python3以后删除了has_key()方法

解决办法:

修改代码

if dict.has_key(key1):

改为

if key1 in adict:

最终修改如下:

至此解决

以上这篇解决运行django程序出错问题 'str'object has no attribute'_meta'就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Django 解决上传文件时,request.FILES为空的问题

    用html的form上传文件时,request.FILES为空,没有收到上传来的文件,但是在request.POST里找到了上传的文件名(只是一个字符串). 解决方法: 为form表单规定enctype属性,其值为"multipart/form-data". enctype 属性规定在发送到服务器之前应该如何对表单数据进行编码. 值 描述 application/x-www-form-urlencoded 在发送前编码所有字符(默认) multipart/form-data 不对字符编

  • Python3下错误AttributeError: ‘dict’ object has no attribute’iteritems‘的分析与解决

    引言 目前Python2和Python3存在版本上的不兼容性,这里将列举dict中的问题之一.下面话不多说,来看看详细的介绍: 1. Python 2  vs python 3 根据Python社区的主流要求,Python 2将在最近的若干年内不再提供技术支持,目前的python 2.7.12已经是其维护版本:如无意外,大家请参照使用Python 3. Python 3与Python 2之间的割裂以及向下不兼容性是其一个非常著名的事件,给整个社区和相关应用造成了相当的困扰. 2.  问题 Pyt

  • 浅谈在django中使用filter()(即对QuerySet操作)时踩的坑

    代码伺候: 先看如下代码: 例1: message = Message.objects.filter(pk=message_id2) message[0].id = message_id2 message[0].content = content2 message[0].message_type = message_type2 print(message[0].id) print(message[0].content) message[0].save() 可正常从QuerySet中读取数据,并打

  • 解决运行django程序出错问题 'str'object has no attribute'_meta'

    如下所示: 报错原因是传入的是类对象,可你传进的参数是字符串,找到传参的位置改过来即可 补充知识:'dict' object has no attribute 'has_key' 解决办法 最近开始学习Python,安装上最新的Python3.6.5 在使用django的时候 出现如下错误 'dict' object has no attribute 'has_key' 保留犯罪现场: 犯罪现场2: 查阅资料发现,Python3以后删除了has_key()方法 解决办法: 修改代码 if dic

  • 云服务器使用宝塔搭建Python环境,运行django程序

    目录 安装宝塔 配置 Python 运行环境 安装 Python 配置 django 环境 安装模块 nginx 反向代理 本篇博客主要内容为 介绍 阿里云服务器(CentOS) 搭建 Django 程序. 在正式开始之前,你需要有一台服务器. 安装宝塔 宝塔官网:https://www.bt.cn/ 如果使用的是 CentOS 系统,使用下述命令安装即可. yum install -y wget && wget -O install.sh http://download.bt.cn/in

  • 解决运行jar包出错:ClassNotFoundException问题

    目录 Java命令运行jar 报错 方式二 jar包运行报错:Invalid or corrupt jarfile MANIFEST.MF格式要求 Java命令运行jar 报错 运行jar命令 java -jar xxx.jar 报错: Caused by: java.lang.ClassNotFoundException: 原因:要运行的jar缺少依赖包 执行jar正确命令: java -Xbootclasspath/a:/home/webuser/gogoal_platform/ggopen

  • 解决运行出现'dict' object has no attribute 'has_key'问题

    这个问题是py2和py3兼容性的问题 在py2中,判断key是否属于dict的写法可以是: d={'name':'abc','location':'BeiJing'} if d.has_key('location'): print(d['location']) 在py3中,判断key是否属于字典的写法可以是: d={'name':'abc','location':'BeiJing'} if 'location' in d: print(d['location']) 补充知识:快速解决出现clas

  • 在Apache服务器上同时运行多个Django程序的方法

    在同一个 Apache 实例中运行多个 Django 程序是完全可能的. 当你是一个独立的 Web 开发人员并有多个不同的客户时,你可能会想这么做. 只要像下面这样使用 VirtualHost 你可以实现: NameVirtualHost * <VirtualHost *> ServerName www.example.com # ... SetEnv DJANGO_SETTINGS_MODULE mysite.settings </VirtualHost> <Virtual

  • 解决Django后台ManyToManyField显示成Object的问题

    如果一个模型里包含了ManyToManyField,在admin后台可能会显示成object,例如 解决方法: 在定义这个类的时候,加多一个函数 实际效果: 以上这篇解决Django后台ManyToManyField显示成Object的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • 最新解决'nvidia-smi' 不是内部或外部命令也不是可运行的程序

    目录 报错代码 报错原因 解决方案 1.添加环境变量 2.更改命令路径 报错代码 使用cmd查看电脑显卡的信息,调用nvidia-smi查看显卡使用情况报错如下: 'nvidia-smi' 不是内部或外部命令,也不是可运行的程序 报错原因 因为它找不到该命令.这个文件是一个exe文件,一般都在下面这个文件夹中. C:\Program Files\NVIDIA Corporation\NVSMI 所以想要使用该命令必须要能得到这个文件夹,才能执行. 解决方案 原因我们都知道,我们有两种办法可以解决

  • 最新解决没有NVSMI文件夹以及nvidia-smi‘ 不是内部或外部命令也不是可运行的程序或批处理文件

    目录 问题1:解决没有NVSMI文件夹 问题2:nvidia-smi‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件 成功解决‘nvidia-smi‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件 解决问题 解决思路 解决方法 windows使用nvidia-smi命令,找不到的解决方式 问题1:解决没有NVSMI文件夹 去英伟达官网下载显卡驱动,对显卡进行升级即可. 问题2:nvidia-smi‘ 不是内部或外部命令,也不是可运行的程序 或批处理文件 方法:将NVSMI文件夹添

  • 解决使用node命令提示:'node'不是内部或外部命令,也不是可运行的程序

    目录 情况1:安装node.js: 情况2:没配置好环境变量 总结 报错:使用node命令提示: ‘node‘ 不是内部或外部命令,也不是可运行的程序 原因:没安装node.js 或者 没配置好环境变量 情况1:安装node.js: 在官网下载 .msi 文件:Node.js 中文网 (nodejs.cn) 步骤 1 : 下载完成后,双击安装包开始安装 步骤 2 : 勾选接受协议选项,点击 next(下一步) 按钮 步骤 3 : Node.js默认安装目录为 "C:\Program Files\

  • 快速解决boost库链接出错的问题(分享)

    安装完最新的Boost库 官方说明中有一句话: Finally, $ ./b2 install will leave Boost binaries in the lib/ subdirectory of your installation prefix. You will also find a copy of the Boost headers in the include/ subdirectory of the installation prefix, so you can hencefo

随机推荐