
Django
热衷开源的宝藏Boy
努力践行将学习的本质与机器学习完美结合!
展开
-
markdown+Pygments高亮代码
安装相关包pip install markdown pip install Pygmentsbash进入项目生成code.css文件pygmentize -S default -f html -a .codehilite > code.cssMD转为Html # MD转化Html extensions = [ 'markdown.extensions.extra', 'markdown.extensions.codehilite',原创 2021-04-07 10:05:30 · 447 阅读 · 0 评论 -
form上传文件用于后端接收存储
<form method="POST" enctype="multipart/form-data"> {% csrf_token %} <input type="file" name="img"> <button type="submit">上传</button> </form>必须要有enctype="multipart/form-data"views.pydef uplo...原创 2021-03-25 19:29:36 · 266 阅读 · 0 评论 -
django TypeError: __str__ returned non-string (type ImageFieldFile)
注释掉返回的__str__#def __str__(self):# return self.image原创 2021-03-25 19:25:41 · 507 阅读 · 0 评论 -
Django FileField获取路径url用于前端显示
models.pyclass Gallery(models.Model): ImageName = models.FileField(upload_to='./static/GalleryImage', verbose_name='图片名称', null=True)views.py Image1 = models.Gallery.objects.all() print(Image1) for i in Image1: print(i.ImageName原创 2021-03-25 19:24:28 · 1471 阅读 · 0 评论 -
Django数据库实现模糊查找
在参数后面添加__icontainsmodels.Article.objects.filter(__icontains="")原创 2021-03-20 10:57:47 · 654 阅读 · 0 评论 -
simplemde编辑实现上传本地图片
本篇基于你安装了simplemde注释掉simplemde.js源码,添加自己的代码function drawImage(editor) { // var cm = editor.codemirror; // var stat = getState(cm); // var options = editor.options; // var url = "http://"; // if(options.promptURLs) { // url = prompt(options.prompt原创 2021-03-17 19:21:14 · 666 阅读 · 1 评论 -
django拖拽图片到编辑器完成上传,并返回图片路径
'''拖拽图片到编辑器完成上传,并返回图片路径''' # 上传图片根路径 PicBaseRoot = "static/Image/" file_img = request.FILES.getlist('file') # 获取文件对象列表 # 自定义名称 for i in file_img: image = models.Image() random_name = str(int(random.random()*10000000...原创 2021-03-16 19:06:46 · 501 阅读 · 0 评论 -
AttributeError: ‘dict‘ object has no attribute ‘status_code‘
问题:AttributeError: ‘dict’ object has no attribute ‘status_code’解决方案在views.py使用HttpResponsereturn HttpResponse(message)原创 2021-03-16 15:21:58 · 1734 阅读 · 0 评论 -
前端获取IP通过ajax将数据传给后端
前端HTML<button onclick="up(ID)"> 函数 </button><script src="http://pv.sohu.com/cityjson?ie=utf-8"></script><script src="{% static 'src/js/jquery-1.8.0.min.js' %}"></script><script type="text/javascript"> <原创 2021-03-16 15:19:38 · 716 阅读 · 0 评论 -
django更新数据库数据的方法
save() articleItem = models.Article.objects.get(Article='') articleItem.Article=True articleItem.save() # 注意后面save()update()models.Article.objects.filter(Article='').update(Arti='')原创 2021-03-16 13:01:04 · 1725 阅读 · 0 评论 -
Caching SHA-2 Pluggable Authentication MySQL原因
运行Django出现Caching SHA-2 Pluggable Authentication 原因需要在terminal手动登录MySQL,再运行即可解决.但每个人原因不一样,我的是之前运行没毛病,重启电脑后,出现这样的问题原创 2021-03-16 11:41:28 · 146 阅读 · 0 评论 -
Django Ajax 图片上传
models.pyclass Image(models.Model): ImageID = models.AutoField(max_length=128, verbose_name='图片ID', primary_key=True) ImageName = models.ImageField(upload_to='./static/Image', verbose_name='图片', null=True)views.pydef uploadimage(request): f原创 2021-03-15 19:32:49 · 262 阅读 · 0 评论 -
markdown库将markdown格式转为html需要通过mark_safe()将字符串作为标签安全输出
markdown库将markdown格式转为html需要通过mark_safe()将字符串作为标签安全输出 articleHtml = mark_safe(markdown.markdown(articleItem.ArticleMarkdownContent))这样前端才会按标签显示https://www.cnblogs.com/izbw/p/11129439.html...原创 2021-03-11 12:34:07 · 292 阅读 · 0 评论 -
Django path 路径参数和kwargs额外参数传递到视图层
url.pyfrom django.urls import pathfrom . import viewsurlpatterns = [ path("<int:x>", views.index, name="index", kwargs = {"y":23}),]views.pyfrom django.shortcuts import renderfrom django.http import HttpResponse# Create your views here原创 2021-03-11 11:26:01 · 926 阅读 · 0 评论 -
models.User.objects.filter()和models.User.objects.get()的区别
models.User.objects.filter()返回一个列表,获取元素需要进行切片处理.models.User.objects.get()返回一个元素原创 2021-03-08 11:29:34 · 1721 阅读 · 0 评论 -
models.User.objects.filter(key=)返回的是列表
models.User.objects.filter(key=)返回的是列表所以需要价格切片models.User.objects.filter(key=)[0]# 或者for m in models.User.objects.filter(key=): ....原创 2021-03-06 18:00:18 · 1187 阅读 · 0 评论 -
Django使用session登录 获取用户user_id信息
print(request.session.get('user_id', None))print(request.session.get('is_login', None))原创 2021-03-06 17:50:57 · 3529 阅读 · 0 评论 -
django创建表单forms
在froms.pyclass RegisterForm(forms.Form): UserName = forms.CharField(label="用户名", max_length=128, widget=forms.TextInput(attrs={'class': 'form-control'})) password1 = forms.CharField(label="密码", max_length=256, widget=forms.PasswordInput(attrs={'cl原创 2021-03-05 13:48:48 · 317 阅读 · 0 评论 -
获取Django数据库的一行的某一个值
通过get sex = models.User.objects.get(UserID=1) print(sex.UserGender)原创 2021-03-04 11:21:42 · 1763 阅读 · 2 评论 -
在前端使用<form>标签\POST方法提交数据到后端|后端调用前端标签数据
<form method="post"><div class="form-group"> <textarea name="field" id="fieldTest" cols="30" rows="10"></textarea></div><input type="submit" value="提交" style="margin-left: 300px;width: 60px;height: 20px;"></fo原创 2021-03-04 10:00:46 · 804 阅读 · 2 评论 -
Django后台显示表不全;原因
Django后台显示表不全;原因:没有在admin.py文件注册model原创 2021-03-03 17:01:46 · 982 阅读 · 1 评论 -
Django数据库建立一个可选择的单选:男女性别
sex_choice = ( (0, '女性'), (1, '男性'),)class Author(models.Model): name = models.CharField( max_length=32) age = models.IntegerField() sex_choice = ( (0, '女性'), (1, '男性'), ) sex = models.IntegerField(choices=sex_choice,default=1) #choic原创 2021-03-03 15:24:11 · 3418 阅读 · 1 评论 -
fields.E304 Reverse accessor clashes in Django
错误信息SystemCheckError: System check identified some issues:ERRORS:website.Person2Person.friend: (fields.E304) Reverse accessor for 'Person2Person.friend' clashes with reverse accessor for 'Person2Person.person'. HINT: Add or change a related_name ar原创 2021-03-03 13:26:05 · 343 阅读 · 0 评论 -
django模型中设置数据库字段默认值
(1)null如果为True,Django 将用NULL 来在数据库中存储空值。 默认值是 False.(1)blank如果为True,该字段允许不填。默认为False。要注意,这与 null 不同。null纯粹是数据库范畴的,而 blank 是数据验证范畴的。如果一个字段的blank=True,表单的验证将允许该字段是空值。如果字段的blank=False,该字段就是必填的。(2)default字段的默认值。可以是一个值或者可调用对象。如果可调用 ,每有新对象被创建它都会被调用。(3)pr原创 2021-03-03 11:26:39 · 4312 阅读 · 0 评论 -
Django - A model can‘t have more than one AutoField
Django默认生成自动主键ID,如果要使用,请添加参数primary_key=True前辈https://stackoverflow.com/questions/31600966/django-a-model-cant-have-more-than-one-autofield原创 2021-03-03 09:25:10 · 979 阅读 · 0 评论 -
开启网页客户端端口测试监听请求
开启网页客户端端口测试监听请求def start_server(ip, port): http_server = http.server.HTTPServer((ip, int(port)), TestHTTPHandle) print('服务器已开启') try: http_server.serve_forever() #设置一直监听并接收请求 except KeyboardInterrupt: pass http_server.server_close() prin原创 2021-02-19 08:53:19 · 412 阅读 · 0 评论 -
简单快速开始Flask学习笔记
简单快速开始Flask简单快速开始Flask1.导入Flaskfrom flask import Flaskapp = Flask(__name__)2.添加路由使用装饰器@app.route('/')def hello_world():return 'Hello, World!3.变量路由from markupsafe import escape@app.route('/user/<username>')def show_user_profile(usernam原创 2020-12-29 17:53:09 · 151 阅读 · 0 评论 -
Python+Django+Channels之Consumers(用户)
Consumers因为建立Channels最底层的解释接口是ASGI,被用来连接复杂应用的操作接口当然你也可以忽略consumers而使用其他Channels部分,像routing,session等等基础布局consumers 的子类有channels.consumer.AsyncConsumerchannels.consumer.SyncConsumerSyncConsumer的一个基础例子from channels.consumer import SyncConsum.原创 2020-12-13 19:29:00 · 1171 阅读 · 0 评论 -
一篇搞定Python3.6+Django+channels实现WebSocket的实时聊天室
[refers0](https://channels.readthedocs.io/en/latest/tutorial/index.html)[refers1](https://blog.youkuaiyun.com/weixin_43486863/article/details/83344368)1.第一部分:基础设置Channels3.0支持Python3.6和Django2.2+1.1项目结构mysite/ manage.py mysite/ __init_原创 2020-12-11 23:23:41 · 2096 阅读 · 3 评论 -
理解全双工http
http协议有多个版本现在主流协议是http1.1http1.1以下为短链接:TCP连接发送信息等待接受信息之后断开http1.1:半双工http2.0是全双工TCP连接示意图原创 2020-12-11 17:45:39 · 1513 阅读 · 0 评论 -
WebSocket +Django 搭建
WebSocketWebSocket本质上是基于TCP协议。使用http握手建立通信的阶段,使用WebSocket保持实时通信。 与http半双工不同的是,WebSocket是正在实现全双工通信的协议。在html5实例化一个WebSocket对象var Socket = new WebSocket(url, [protocol] );WebSocket属性Socket.readyState:只读属性,表示连接状态 0-表示连接尚未建立 1-表示连接已经建立 2-表示连接.原创 2020-12-11 16:38:24 · 899 阅读 · 1 评论 -
DJango HttpResponse如何显示中文不出现乱码
from django.http import HttpResponseimport jsondef test(request): result = {"status":"错误","data":"","city":"北京"} #json返回为中文 return HttpResponse(json.dumps(result,ensure_ascii=False),content_type="application/json,charset=utf-8")...原创 2020-11-30 23:52:08 · 913 阅读 · 0 评论 -
Python 3.x 中“HTTP Error 403: Forbidden“问题的解决方案
原因网站设置了反爬机制解决方案#如果不加上下面的这行出现会出现urllib2.HTTPError: HTTP Error 403: Forbidden错误 #主要是由于该网站禁止爬虫导致的,可以在请求加上头信息,伪装成浏览器访问User-Agent,具体的信息可以通过火狐的FireBug插件查询 headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23原创 2020-09-13 17:00:20 · 945 阅读 · 0 评论 -
判断爬取到页面的编码类型
1 #如果你的python没有安装chardet模块,你需要首先安装一下chardet判断编码的模块哦 2 #author:pythontab.com 3 import chardet 4 import urllib 5 #先获取网页内容 6 data1 = urllib.urlopen('http://www.baidu.com').read() 7 #用chardet进行内容分析 8 chardit1 = chardet.detect(data1) 9 10 print char.原创 2020-09-13 14:52:58 · 119 阅读 · 0 评论 -
Django admin页面模板
Django admin页面模板/usr/local/Python-3.6.6/data/env/pyweb/lib/python3.6/site-packages/django/contrib/admin/templates原创 2020-09-13 09:18:38 · 426 阅读 · 0 评论 -
Django部署流程
进入环境,激活环境cd /usr/local/Python-3.6.6/data/env/pyweb/binsource activate关闭ngixcd /usr/local/nginx/sbin./nginx -s quit安装requestcd /usr/local/Python-3.6.6/data/env/pyweb/bin pip install requests进入数据库创建新的数据库mysql -uroot -proot <uroot是用户名,proot原创 2020-09-12 22:41:47 · 125 阅读 · 0 评论 -
Django QuerySet 多表联查/条件选取/合并
多表联查class A(models.Model): aname = models.CharField()class B(models.Model): bname = models.ForeignKey(A)B.objects.filter(bname__aname__contains='searchtitle') # 是两个 '_' 。条件选取QuerySetfilter 表示 = exclude 表示 != querySet.distinct() 去重复__exact 精确等于原创 2020-09-11 22:11:53 · 1577 阅读 · 0 评论 -
django获取数据库以字典返回
name = models.User.objects.values('name').get(id=i.commenter)原创 2020-09-06 11:28:26 · 880 阅读 · 1 评论 -
Python对字典的遍历基于键.items
for m,n in commentUserName.items原创 2020-09-06 11:25:56 · 136 阅读 · 2 评论 -
修改字典的键名
info = {"x":1.5 ,"y":2}info.update({"z":info.pop("x")})https://jingyan.baidu.com/article/495ba84149489378b20ede7b.html原创 2020-09-06 10:45:12 · 619 阅读 · 0 评论