django问题记录

本文只记录自己遇到的错误,以及解决的方法,解决方法都来自己互联网。

问题一

出现:AttributeError: ‘NoneType’ object has no attribute ‘is_relation’
原因:可能是django迁移文件的问题,可以在报错中找到这个文件,fields.py,加入

print(app_label +' '+self.model_name_lower +' '+ self.name)

在这里插入图片描述
会输出例如图下的信息
在这里插入图片描述
前面是App名,后面是对应的字段,找到对应的迁移表删除就行了,如果不需要之前的数据,就直接把所有的迁移表都删除,留下__init__.py就行了。
删除完再执行 python manage.py makemigrations 就可以了。

问题二

出现:‘static’. Did you forget to register or load this tag?
原因:没有在加上 {% load staticfiles %}, 导致引用失败

为了方便后期的维护,在对一个网页配置静态文件的时候, 想改变以往那种硬编码的方式, 改为动态引用.
于是我这么引用静态文件
在这里插入图片描述
但是在测试的时候总是显示404

我以为是配置问题, 在setting.py里面找了很久, 后来排除了

问题的原因是我没有在加上 {% load staticfiles %}, 导致引用失败

后来我加上了, 成功
在这里插入图片描述

问题三

self._sock.sendall(b) ConnectionAbortedError: [WinError 10053] 您的主机中的软件中止了一个已建立的连接。

解决方法:找到python/Lib/socketserver.py文件,修改SocketWriter类的write方法,具体如下:

def write(self, b):
	try:
		self._sock.sendall(b)
	except Exception as e:
		self._sock.close()
	with memoryview(b) as view:
		return view.nbytes

问题四

self.status.split(’ ',1)[0], self.bytes_sent AttributeError: ‘NoneType’ object has no attribute 'split

解决方法:打开python\lib\wsgiref\simple_server.py文件,修改ServerHandler类,具体如下:

class ServerHandler(SimpleHandler):
    server_software = software_version
    def close(self):
        try:
            self.request_handler.log_request(
                self.status.split(' ',1)[0], self.bytes_sent
            )
            SimpleHandler.close(self)
        except Exception as e:
            SimpleHandler.close(self)
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值