Django
文章平均质量分 50
大聪明Smart
Talk is cheap, show me your code.
展开
-
Django搭建个人博客平台1---效果展示、环境准备和需要掌握的技术栈
Django搭建个人博客平台1—效果展示、环境准备和需要掌握的技术栈最终效果展示这里以我个人搭建的博客为例,大家先看一下效果。效果地址:https://www.liboer.top 博客介绍 需要掌握的技术栈Python和Django肯定要会,硬性要求。技术栈 后端:Django、Python、DRF(看需求再学) 前端:Html、CSS、jQuery、Ajax原创 2021-05-22 12:29:06 · 12179 阅读 · 28 评论 -
Django搭建个人博客平台7---自定义基于Bootstrap的分页组件
Django搭建个人博客平台7—自定义基于Bootstrap的分页组件MyBlog-----------------项目名 blog---------------应用名 utils----------工具 page_html.py---分页组件 migrations-----数据库迁移文件 admin.py-------后台管理 models.py------模型文件(表结构) views.py-------视图函数(ORM增删改查) MyBlog-------------项原创 2021-06-13 12:08:11 · 630 阅读 · 4 评论 -
Django搭建个人博客平台6---前端templates模板index页
文章目录Django搭建个人博客平台6---前端templates模板index页base页面静态文件建议目录结构base.htmlindex首页自定义Navigation导航栏inclusion_tag自定义标签和控制器方法介绍inclusion_tag导航栏inclusion_tagindex.html后话Django搭建个人博客平台6—前端templates模板index页Django的template模板渲染官方文档:官方文档大家可以去模板网站上找一下自己喜欢网站,参照它的样式布局,也可以参照原创 2021-06-09 10:43:59 · 8548 阅读 · 8 评论 -
Django搭建个人博客平台3---博客表结构设计和markdown编辑器
文章目录Django搭建个人博客平台3---博客表结构设计和markdown编辑器表关系主要表之间的逻辑结构Markdown编辑器安装注册配置使用数据库迁移Admin添加数据后话Django搭建个人博客平台3—博客表结构设计和markdown编辑器表关系我们需要用到的表以及他们之间的关系UserInfo:用户信息表,存储用户信息(也可以继承AbstractUser,这里自己写了一个,都一样)。Column:专栏,就是显示在导航栏中的。Tag:文章标签Category:文章分类,与Column外原创 2021-06-01 14:28:06 · 5114 阅读 · 8 评论 -
Django博客来访人员地域分布大数据可视化---echarts绘图、geoip2获取地理位置
文章目录Django博客来访人员地域分布大数据可视化---echarts绘图、geoip2获取地理位置效果echarts作图geoip2获取地理位置api接口开发ajax前后端动态交互Django博客来访人员地域分布大数据可视化—echarts绘图、geoip2获取地理位置今天,萌生一个想法。就是想把我的个人博客来访的人员地域分布进行一个可视化作图,并显示在我的留言板上。话不多说,就开始了掉头发的征程。。。。效果首先,还是来展示一下效果怎么样吧:生成的是一份中国地图,这里只统计了国内来访人原创 2021-05-28 21:22:44 · 14487 阅读 · 11 评论 -
Django搭建个人博客平台2---创建一个Django项目和项目梳理
文章目录Django搭建个人博客平台2---创建一个Django项目和项目梳理MVC和MTV框架MVCMTV创建Django项目目录结构作用运行简单走一下流程基于Django实现一个简单的示例get请求获取数据post请求获取数据写项目项目初步整合结构静态文件配置路由分发数据库配置时区和语言后话Django搭建个人博客平台2—创建一个Django项目和项目梳理这里假设你对Django有了一定的了解,并掌握一定的相关技术。如果没有的话,请一部我的上一篇文章观看。MVC和MTV框架MVC把Web应原创 2021-05-24 12:40:09 · 6184 阅读 · 17 评论 -
瞬间心情愉悦,头发都少掉了几根!---Django+uwsgi+Nginx项目部署超详细步骤
文章目录瞬间心情愉悦,头发都少掉了几根!---Django+uwsgi+Nginx项目部署超详细步骤先决条件步骤本地运行测试上传服务器环境安装准备django程序完美解决!瞬间心情愉悦,头发都少掉了几根!—Django+uwsgi+Nginx项目部署超详细步骤先决条件可以正常在本地运行的django项目一台云服务器(阿里云、华为云等亲测均可)域名(没有的话可以使用localhost)坑:记得关闭防火墙,放行用到的端口。uwsgi和nginx的配置文件路径一定要写对。有问题评论区留言,华为云、原创 2021-05-21 19:34:04 · 6137 阅读 · 16 评论 -
Django博文数据可视化、simple-ui优化、导入导出插件
Django博文数据可视化、simple-ui优化、导入导出插件今日任务django博客admin优化导入导出插件DRF的action装饰器博文数据可视化昨日未解决问题django-admin修改密码后账户失效问题今日内容django博客admin优化后台我们使用了simple-ui插件,所以针对模板是对它的优化。其他像展示和搜索按钮直接在ModelAdmin中修改即可。admin优化展示字段设置我要对UserInfo表多展示几个字段,不是只展示用户名。首先,自定义一个原创 2021-05-17 16:06:34 · 15956 阅读 · 16 评论 -
Django博客用到的插件-看板娘、背景特效、OwO表情、图片查看器、自动生成目录等
Django博客用到的插件所有需要用到的文件https://www.liboer.top/media/covers/plugins.rar和风天气去和风天气申请免费自定义插件,有js引入即可。看板娘{#看板娘容器#}<div class="pio-container right"> <div class="pio-action"></div> <canvas id="pio" width="200" height="250">原创 2021-05-14 22:18:00 · 793 阅读 · 0 评论 -
Django中使用celery分布式处理邮件/信息发送任务
https://liboer.top/articles/detail/celery-use-django/celery分布式处理在django博客中配置邮件服务器后,当有用户给我们评论时,会发送邮件提醒。如果在发送邮件时,邮件那边卡住了,或者卡了几秒则会导致django卡住,要么django无法服务,要么就是时间特别长。生产者消费者模型django把发邮件这件事,发到一个redis的list中,让他去发。celery,可以实现分布式的处理任务事件。专注于实时处理的任务队列,同时也支持任务调度。原创 2021-05-14 16:26:49 · 11723 阅读 · 1 评论 -
Django添加redis数据库作缓存
https://www.liboer.top/articles/detail/django-redis/Django添加redis数据库作缓存安装redis系统: Centosyum安装yum install -y redis编译安装wget http://download.redis.io/releases/redis-5.0.5.tar.gztar -xf redis-5.0.5.tar.gzcd redis-5.0.5/makeredis数据类型和基本操作htt原创 2021-05-13 21:48:19 · 279 阅读 · 0 评论 -
DRF的ModelSerializers中自定义了字段就必须重写create方法
DRF在写ModelSerializers时,如果你自定义了字段那么必须重写create方法,不然在ModelViewset中调用create方法时会报异常。class CommentModelSerializers(serializers.ModelSerializer): username = serializers.CharField(source='username.username', required=True) class Meta: model = mod原创 2021-05-12 22:37:28 · 1732 阅读 · 0 评论 -
Django Api----djangorestframwork
Django restframwork一切皆是资源,操作只是请求方式。url里面不能出现任何一个动词https://www.cnblogs.com/yuanchenqi/articles/8719520.htmlpip install djangorestframework使用先到app中注册# Application definitionINSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth',原创 2021-05-07 17:12:11 · 252 阅读 · 0 评论 -
dajngo设置cookie的samesite属性
前端发送axios请求时我们django给予响应时若想携带cookie,必须要设置跨域,否则会杯浏览器拦截。新版本的Chrome浏览器会有一个SameSite属性,他有三个值:Strict、Lax、none。Strict较为严格,不允许跨域携带cookie,Lax稍微宽松允许一部分跨域cookie,none则直接允许跨域cookie。这里我们要设置none才行,默认就是Lax。但是设置none时还需要告诉浏览器我这个cookie是安全的,不然也会被拦截的。所以最终django设置:要在settin原创 2021-05-07 17:10:37 · 1125 阅读 · 1 评论 -
Django给博客添加全站图标和robots协议
原文在我的博客:https://liboer.top/articles/detail/Django-robots/添加favicon.icofrom django.views.generic.base import RedirectViewfavicon_view = RedirectView.as_view(url=r'static/image/favicon.ico', permanent=True)# 全站图标path('favicon.ico', favicon_view),添加r原创 2021-04-07 21:21:33 · 331 阅读 · 0 评论 -
Django给博客添加sitemap
在settings.py文件中安装应用并将SITE_ID = 1INSTALLED_APPS = [ 'django.contrib.sites', 'django.contrib.sitemaps',]SITE_ID = 1 # site表的pk值执行makemigration和migrate进行数据库迁移执行后去django的admin中修改样例的domain和displaywww.example.com为你的域名www.site.com在你的app文件夹..原创 2021-04-07 21:02:30 · 229 阅读 · 2 评论 -
Django重写admin的modelform校验器
原文在我的博客:https://www.liboer.top/articles/detail/Django-AdminForm/Django重写admin的modelform校验器背景在我的博客中,文章表有标题、简介、内容等字段。一般情况下发文章时,我不想写文章的简介(太懒了,麻烦)。这时候就想到能不能直接截取我内容的前200个字符作为简介呢?答案是肯定的!猜想首先,我猜想:即使是admin他也肯定是封装好了校验功能的。就比如我们自己做校验时,自己写一个model的class,自己在写一个mod原创 2021-04-03 00:24:58 · 526 阅读 · 1 评论 -
Django给博客添加RSS订阅
具体效果参考我的博客:https://www.liboer.top/Django给博客添加RSS订阅利用Django自带的Feed类实现创建feeds.py首先在你的app目录下创建一个feeds.py文件from django.contrib.syndication.views import Feedfrom django.urls import reversefrom blog.models import Article # 文章表class BlogRssFeed(Feed):原创 2021-04-02 22:38:50 · 295 阅读 · 1 评论 -
网站CDN加速后对URL中?后的参数跟随问题
原文在我的网站:https://www.liboer.top今天浏览我自己的网站时,突然发现,我的翻页功能失效了。永远都显示在第一页,吓我一跳。难道又出bug啦。。。。没办法排查吧,先打开本地项目测试,发现没有问题呀!难道是我项目上线后在后期添加功能时哪里改错了吗? 开始一一排查,发现我的分页器和view函数没有任何毛病!这时想到我昨天配置了CDN加速,是不是这方面的问题呢?经过分析,主要是由于我的view函数在request中接受不到UIR中?后面携带的参数,然后打开CDN配置寻找。发现有一项原创 2021-04-02 22:05:56 · 711 阅读 · 0 评论 -
Django的form提交js注入问题
我的网站刚刚正式上线,就被人用js注入了alert。也是无聊,我正忙着笔试呢没空修复。现在修复一下。就说对form提交的数据进行js转义就行了。方法一在django中用escape 或 escapejs过滤器其实django模板已经做了防止js注入,但是我们又想在页面中正常显示我们在form表单中提交的和标签等。所以用了safe过滤器告诉浏览器是可信的,正常渲染。{{ content | safe }}但是,这样就会造成恶意人员实施js注入:在表单中评论<script>aler原创 2021-03-30 23:41:03 · 387 阅读 · 0 评论 -
Django没有继承auth_user自定义last_login字段
原文链接在我的个人博客:http://liboer.top/articles/detail/8/在userinfo表中新增字段last_login = models.DateTimeField(auto_now=True, blank=True, null=True, verbose_name='最后登录时间')models.pyclass UserInfo(models.Model): """用户信息表""" username = models.CharField(max_len原创 2021-03-26 17:03:43 · 706 阅读 · 1 评论 -
服务器更改html内容清理缓存后刷新页面仍然不显示问题
只清除浏览器换成还不行,要清除cookie和session才可以。原创 2021-03-20 00:08:22 · 787 阅读 · 0 评论 -
django路径请求不到
media/avatr/1.jpg 自动请求当前路径加上media/avatr/1.jpg/media/avatr/1.jpg 自动请求跟路径加上media/avatr/1.jpg原创 2021-03-16 21:20:31 · 311 阅读 · 0 评论 -
内容提交的时一个图片,但是前端显示的时<img src=“地址“>而不是图片
这是因为浏览器多管闲事,它以为你想要的是展示内容。加上safe过滤器就行了,让浏览器正常渲染。<strong class="text-break pr-4">{{ comment.content|safe }}</strong>原创 2021-03-13 11:00:04 · 657 阅读 · 0 评论 -
获取每日一句显示到博客中
获取每日一句显示到博客中每日一句apihttps://api.xygeng.cn/one响应结果{ "code": 200, "data": { "id": "807", "tag": "漫画",//主题 "origin": "《萤火之森》",//来自 "content": "其实美丽的故事都是没有结局的,只因为它没有结局所以才会美丽。",//内容 "datetime": "1548230343"原创 2021-03-12 21:59:09 · 427 阅读 · 0 评论 -
博客开发用到的小插件(待增加)
添加表情包:OwOmd编辑器:django-mdeditormd转HTML:Markdown editor.md mistune文章添加目录:tocbot禁用开发者工具:disable-devtool.min.js代码块显示风格:prism BlackMac.css原创 2021-03-12 19:44:27 · 268 阅读 · 0 评论 -
使用tocbot给自动文章添加目录
文章目录使用tocbot给自动文章添加目录引入文件给markdown生成的html里的所有h标签生产自己的id属性值初始化tocbot使用tocbot给自动文章添加目录引入文件<script src="https://cdnjs.cloudflare.com/ajax/libs/tocbot/4.5.0/tocbot.min.js"></script><link rel="stylesheet" href="https://cdnjs.cloudflare.com/aj原创 2021-03-12 19:37:40 · 2243 阅读 · 1 评论 -
Django3递归展示评论树和Ajax展示评论树
关于博客评论功能实现遇到的问题评论功能这方面很容易实现,做一个comment的model。使用modelform进行表单验证,即可实现添加评论的功能。难点是利用ajax发送请求,实现动态添加评论。不刷新页面即可剪刀评论。在这方面对跟评论的添加很容易,使用ajax发请求向后端拿数据,找到评论的div,进行append即可。关键是子评论的添加。首先判断父评论的id值pid,在append的父评论中的div标签添加动态的评论的主键pk值为comment_d值,通过comment_d=pid找到这个标签,原创 2021-03-11 22:39:39 · 403 阅读 · 0 评论 -
simpleui、mdeditor、mistune、置顶+分页
文章目录django博客开发中遇到的一些小功能带有置顶功能的分页器simpleuimdeditorsettings.py中注册simpleuimistunedjango博客开发中遇到的一些小功能带有置顶功能的分页器直接查询出所有文章的QuerySet然后按添加时间倒序排序,直接进入分页器。这样会没有置顶功能。事先过滤出is_commend置顶文章,把器添加时间置为2099年,之后按时间倒序排序。但是这样前段显示时间又成了问题。试了联合查询也未能实现。我直接增加了一个更新时间字段,把置顶文章显示它原创 2021-03-09 19:07:25 · 606 阅读 · 0 评论 -
Django项目执行migrate后报AttributeError: ‘str‘ object has no attribute ‘decode‘
File "C:\Python\Python36\lib\site-packages\django\db\backends\utils.py", line 103, in execute sql = self.db.ops.last_executed_query(self.cursor, sql, params) File "C:\Python\Python36\lib\site-packages\django\db\backends\mysql\operations.py", line 1..原创 2021-03-08 19:39:46 · 341 阅读 · 0 评论 -
Django项目:LOL学院学员管理系统
文章目录Django项目:CRM客户管理系统(更新中)表结构设计登录注册页面客户信息主页视图函数和url逻辑客户信息分页Cookie和session的登陆认证完整项目打包文件Django项目:CRM客户管理系统(更新中)表结构设计这里只涉及客户信息表及其相关表的操作# models.pyfrom django.db import models# Create your models here.class UserInfo(models.Model): """用户信息表"""原创 2020-11-25 09:48:06 · 7456 阅读 · 0 评论 -
Django基础---Form和modelform校验器、同源和跨域问题
文章目录Form和modelformForm自动生成登录标签并校验其他属性校验器组件Hook钩子方法局部钩子和全局钩子modelform同源和跨域简单请求跨域Form和modelform参考:https://www.cnblogs.com/clschao/articles/10486468.htmlForm自动生成登录标签并校验# views.pyclass LoginForm(forms.Form): name = forms.CharField( label='用户名原创 2020-11-23 20:39:32 · 321 阅读 · 1 评论 -
Django基础中间件---django请求生命周期、自定义中间件、中间件登录认证白名单
文章目录中间件介绍**django请求生命周期(重点)**自定义中间件中间件认证白名单中间件介绍参考:https://www.cnblogs.com/clschao/articles/10480419.html# MIDDLEWARE就是中间件MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware',原创 2020-11-20 10:34:39 · 362 阅读 · 0 评论 -
Django基础之cookie和session---Cookie和Session登录验证、FBV和CBV便捷装饰器、实用性配置
文章目录cookie和sessionCookie规范Django操作Cookie**用Cookie做一个登录验证**session原理django中操作sessiondjango中session的相关方法django中session的相关配置CBV中加装饰器相关cookie和session参考:https://www.cnblogs.com/clschao/articles/10480206.htmlHTTP协议对话无连接无状态 http协议断开后自动删除信息,下次来还要从新连接,不记住任何状原创 2020-11-19 19:17:34 · 572 阅读 · 0 评论 -
Django模型层—ORM中的事务和锁、Ajax异步请求和局部刷新、Ajax文件上传、日期时间类型的Json、多表查询图书系统
Django模型层—ORM中的事务和锁参考:https://www.cnblogs.com/clschao/articles/10463267.html锁行级锁entries = Entry.objects.select_for_update().filter(author=request.user) #加互斥锁,由于mysql在查询时自动加的是共享锁,所以我们可以手动加上互斥锁。create、update、delete操作时,mysql自动加行级互斥锁SELECT * FROM t1 WHE原创 2020-11-18 15:22:38 · 342 阅读 · 0 评论 -
Django模型层之多表操作---Django–admin、多表增删改、多表查询(跨表查询、双下划线、聚合、分组、F查询、Q查询)
Django模型层—多表操作参考:https://www.cnblogs.com/clschao/articles/10439958.html三种表关系:一对一、一对多、多对多。创建模型# models.py# 快速运行:# Tools-->run manage.py Taskfrom django.db import models# Create your models here.from django.db import models# Create your mode原创 2020-11-16 17:01:09 · 1392 阅读 · 5 评论 -
Django模型层之单表操作---ORM、增删改、简单查、查询接口、简单图书管理系统
文章目录Django模型层---单表操作ORM简介配置mysql数据库ORM单表增删改查Django模型层—单表操作ORM简介ORM是“对象-关系-映射”的简称。(Object Relational Mapping,简称ORM)(将来会学一个sqlalchemy,是和他很像的,但是django的orm没有独立出来让别人去使用,虽然功能比sqlalchemy更强大,但是别人用不了)类 — 表对象 — 行属性 — 字段app01下的models.py: from django.db i原创 2020-11-13 21:27:26 · 387 阅读 · 0 评论