django
kalath_aiur
这个作者很懒,什么都没留下…
展开
-
Django博客项目(五)—— 博客详情及回复
前情提要:Django博客项目(一)—— 注册和登录页面Django博客项目(二)—— 博客首页Django博客项目(三)—— 博客列表及搜索Django博客项目(四)—— 发表博客本文将介绍博客项目的最后一部分, 博客的详情页及发表回复部分。图示这里查看上一篇或下一篇博客依据的标准是博客发表时间,倒序排序。为了使页面整洁,对评论区使用了分页显示。使用了富文本编辑器进行评论...原创 2020-03-11 21:58:51 · 425 阅读 · 0 评论 -
Django博客项目(四)—— 发表博客
前情提要:Django博客项目(一)—— 注册和登录页面Django博客项目(二)—— 博客首页Django博客项目(三)—— 博客列表及搜索本文介绍博客发表页面的实现,最后的博客详情及回复部分放在下一篇进行。图示如图所示,填写标题、正文、选择分类,然后点击提交即可完成博客发表。富文本编辑器配置在settings.py文件中添加配置INSTALLED_APPS = [ # 在...原创 2020-03-10 19:23:11 · 448 阅读 · 0 评论 -
Django博客项目(三)—— 博客列表及搜索
前情提要:Django博客项目(一)—— 注册和登录页面Django博客项目(二)—— 博客首页本文继续介绍博客项目的第三部分,博客列表及博客搜索功能的实现。效果图本页面总共可看作五个部分:博客信息显示在页面上的信息包括:发表时间、分类、标题、内容、作者、回复数量。分页显示为了使页面整洁,使用分页的方法显示博客,每页显示四篇。博客搜索填入关键字,点击搜索图标,即...原创 2020-03-09 19:37:51 · 443 阅读 · 0 评论 -
Django博客项目(二)—— 博客首页
前情提要:Django博客项目(一)—— 注册和登录页面本文将继续介绍博客项目的第二部分,博客首页的实现。效果图首先还是先来看一下完成后的效果:未登录时,导航栏包括首页、博客列表、登录、注册菜单。登录之后,会增加发表博客、注销登录菜单。首页显示评论数量最多的三篇博客,显示内容如图所示。最后一部分显示最近发表的三篇博客的信息路由配置在应用的urls.py文件中添加首页的路...原创 2020-03-08 20:44:31 · 561 阅读 · 0 评论 -
Django博客项目(一)—— 注册和登录页面
最近使用Django+Nginx+UWSGI的方式,实现了一个简单的个人博客项目。主要功能包括注册、登录、发表博客、发表评论、博客列表及博客搜索、博客主页显示等等。本文介绍首先实现的功能,也就是最基本的登录和注册功能。效果图首先看一下完成后的效果,以便于理解。登录页面:注册页面配置文件中添加相关配置信息修改settings.py文件INSTALLED_APPS = [ # ...原创 2020-03-07 21:44:12 · 3351 阅读 · 0 评论 -
Django+Nginx+UWSGI部署项目
我们在本地写的项目,运行结果只能自己查看,无法让他人使用。如果想要上线项目,可以通过Django+Nginx+UWSGI的方式,将项目部署在云服务器上,此时其他用户只需输入URL地址,就可使用项目。部署前服务器相关配置本文使用的云服务器为阿里云服务器,系统为Ubuntu 18.04。安装依赖环境apt updateapt -y install man gcc make lsof s...原创 2020-03-06 16:59:26 · 203 阅读 · 0 评论 -
Django中使用logging模块记录日志
logging模块是Python内置的标准模块,主要用于输出日志信息,可以设置输出日志的等级、日志保存路径等信息。日志的作用日志主要有三种作用:问题跟踪通过日志文件,在程序安装或者运行过程中出现的问题,会进行记录,以便技术人员进行问题排查。如果没有日志文件,问题将会难以进行判断。状态监控通过对日志进行实时分析,可以监控运行状态,以便出现问题时可以尽早发现。安全审计主要用...原创 2020-03-05 21:08:34 · 231 阅读 · 0 评论 -
Django中缓存的使用
在Django中,用户的请求到达视图时,视图会从数据库中获取数据,然后放到前端模板中进行动态渲染,渲染之后就能是⽤户看到的网页。但是如果用户每次请求时,视图都从数据库提取数据并渲染,将会极大降低性能,提升服务器压力,客户端也因此无法及时获得响应。此时可以使用缓存技术,将渲染后的结果放到缓存中,之后每次获得请求时,首先检查缓存中是否存在对应数据,如果存在就直接从缓存中获取数据并返回响应,这样可以...原创 2020-03-04 21:33:32 · 350 阅读 · 0 评论 -
Django后台站点管理
很多网站都分前台显示和后台管理两部分。例如公司OA系统,论坛,公司的知识库系统等。前台用于显示可供用户使用的界面,例如查看文章,搜索帖子,发表回复等,后台用于管理用户信息,以及向数据库中添加文章,新闻,公告等信息用于前台显示。Django中提供了直接进行站点管理的模板,可在此基础上进行自定义相关功能。创建管理员用户默认情况(本地地址,端口为8000)下,输入http://127.0.0.1:...原创 2020-03-03 18:37:59 · 729 阅读 · 1 评论 -
Django中富文本编辑器功能
使用Django做项目时,有时会有使用到富文本编辑器的需求。例如论坛发帖及回帖;发表博客,回复博客等。安装django-tinymce库pip install django-tinymcesettings.py添加配置INSTALLED_APPS = [ ..., # 添加应用 'tinymce',]# 富文本剪辑器配置TINYMCE_DEFAULT_CONFIG =...原创 2020-03-02 20:51:02 · 308 阅读 · 0 评论 -
Django中实现电子邮件发送
Django中,可以实现电子邮件发送功能。如果想要在代码执行中有发送邮件的相关需求可进行相关配置,例如将从数据库中查询的结果通过电子邮件的形式发送,或者在日志中配置,出现特定警告或错误类型时,通过电子邮件的形式通知管理员。settings.py中的配置项# smtp服务器EMAIL_HOST = 'smtp.qq.com'# smtp端口EMAIL_PORT = 25# 发送者邮箱地址...原创 2020-03-01 18:19:19 · 366 阅读 · 0 评论 -
Django中封装类实现文件上传
相关配置实现文件上传功能时,首先需要注意以下几点:前端表单表单需要设置enctype="multipart/form-data"且提交类型为POSTsettings.py中配置文件存储的路径MEDIA_ROOT = os.path.join(BASE_DIR, 'static/upload')前端表单<form action="{% url 'App01:upload...原创 2020-02-29 16:43:03 · 269 阅读 · 0 评论 -
Django中分页的实现方式
前端展示从数据库中获取的数据时,如果不进行分页,所有内容会在一起显示,如果有上百条数据,查看起来非常麻烦而且不美观。例如:如果进行了分页,设置每页中显示的数据数量(例如10条),结果就会非常整洁,便于查看。例如:此时可以通过点击页码进行分页查看。Django中的实现方式配置settings.py可以在配置文件中添加COUNT_OF_PAGE = 10此参数的意思是分页显示时...原创 2020-02-28 15:29:01 · 611 阅读 · 1 评论 -
Django中图形验证码的使用
在网站上进行登录、注册等操作时,经常需要输入图形验证码。在Django中,我们可以进行实现。步骤如下:安装django-simple-captcha库pip install django-simple-captchasettings.py中添加配置INSTALLED_APPS = [ ..., # 添加此应用 'captcha',]# 图像验证码格式,可以自定义。...原创 2020-02-27 09:00:05 · 726 阅读 · 0 评论 -
Django中表单的使用方式
Django的表单模块提供的主要功能准备和重构数据,用于页面渲染为数据创建HTML表单元素接收和处理用户使用表单提交的数据使用方式定义表单类表单类都必须直接或间接继承自django.forms.Form可以结合模型使用。models.py文件class User(models.Model): username = models.CharField(max_leng...原创 2020-02-26 21:46:13 · 198 阅读 · 0 评论 -
Django中的用户认证系统
auth模块是Django提供的标准权限管理系统,可以提供用户身份认证, 用户组和权限管理。User模型Django 内置了User模型,包含了username,password,email等字段信息。但是实际使用时,可能会包含一些其他的字段信息,例如手机号,头像,签名信息等。此时需要在系统的User模型上进行拓展。应用目录下的models.py注意,需要继承AbstractUser类...原创 2020-02-25 20:50:43 · 454 阅读 · 0 评论 -
Django中利用cookie或session实现状态保持
cookiecookie把会话数据保存在客户端浏览器中。但是要注意,cookie不能跨浏览器使用,并且不能保存汉字。Django中的实现方式:首先在应用的urls.py中设置路由urlpatterns = [ path('login/', views.login, name='login'), # 测试设置cookie path('reply/', views.reply...原创 2020-02-24 11:12:07 · 194 阅读 · 0 评论