django6

xiaoxiao2021-02-28  29

django模板 {%include 'xxx.html' %} 过滤器{{ datetime | date }} 管道嵌套 继承{%extends 'base.html' %} django里的‘|’是输出的意思  发表博客 从setting里新建一个blogmanager的app startapp blogmanager 新建三个页面: addd.html: <head>     <meta charset="UTF-8">     <title>发表博客</title>     <script type="text/javascript" charset="utf-8" src="/static/ueditor/ueditor.config.js"></script>     <script type="text/javascript" charset="utf-8" src="/static/ueditor/_examples/editor_api.js"></script> </head> <body> <h2>发表博客</h2> <form action="/blogmanager/addBlog" method="post"> 标题 <input type="text" name="title"/><br> 内容 {% csrf_token %}         <script type="text/plain" id="uploadFile" name="uploadFile">             <p>欢迎使用UEditor!</p>         </script>         <input type="submit" value="通过input的submit提交">      <input type="submit" value="发表博客"> </form> <script type="text/javascript">         var editor_a = UE.getEditor('uploadFile',{initialFrameHeight:500,serverUrl:'/blog/handler'});     </script> detail.html: <head>     <meta charset="UTF-8">     <title>发表成功</title> </head> <body> <a href="/blogmanager/show">返回主页</a><br> 标题:{{ blog.title }}<br> 作者:{{ blog.blogUser.blogName }}<br> 创建时间:{{ blog.createTime |date:"Y年m月d日H:i:s" }} {% autoescape off %} 内容:{{ blog.content }} {% endautoescape %} </body> show.html: <head>     <meta charset="UTF-8">     <title>自定义分页</title> </head> <body> 欢迎{{ blog.session.username }}<br> <a href="/blogmanager/addBlog">发表博客</a> {% for blog in blogList %} <a href="/blogmanager/blogDetail/{{ blog.id }}">{{ blog.title }}</a> 作者:{{ blog.blogUser.userName }}  发布时间{{ blog.createTime | date:"Y年m月d日H:i:s" }} {% endfor %} <a href="/blogmanager/show/1">首页</a>   {% if prePage > 0 %} <a href="/blogmanager/show/{{ prePage }}">上一页</a>   {% endif %} {% if nextPage <= pages %} <a href="/blogmanager/show/{{ nextPage }}">下一页</a>   {% endif %} <a href="/blogmanager/show/{{ pages }}">尾页</a> <form action="/blogmanager/show" method="post">     {% csrf_token %} 跳转到<input type="text" size="3" name="pageNo"/>     <input type="submit" value="GO"/> </form> </body> 在blogmanager新建urls from django.urls import path from blogmanager.views import * #from . import uecontroller app_name='bloguser' urlpatterns=[     path('addBlog',addBlog),     path('show/<int:pageNo>',show,name='show'),     path('show',show,name='show'),     path('blogDetail /<int:id>',blogDetail) ] 在views里写: 在tools里要重新迁移0001 from django.shortcuts import render,redirect,reverse from .models import Blog from blog.models import BlogUser from datetime import datetime # Create your views here. def addBlog(request):     if request.session.get("username") is None:         return render(request, "login.html")     else:         if request.method=='GET':             return  render(request,"manager/addd.html")         else:             #接受博客内容             title=request.POST.get("title")             content=request.POST.get("content")             print('富文本---',content)             blog=Blog()             blog.title=title             blog.content=content             #从session中获取用户名             username=request.session.get("username")             blog.blogUser=BlogUser.objects.filter(userName=username).first()             blog.createTime=datetime.now()             blog.save()             print('保存成功')             return redirect("show/1") 分页:paseNo:当前页码;paseSize:每页显示的最大记录数;pages:共多少页 def show(request,pageNo=1):     if request.POST.get("pageNo") is not None:         return render(request.POST.get("pageNo"))     #获取第几页,每页显示的最大记录数select * from tablename limit(pageno-1)*pageSize,pageSize     pageSize=4     beginIndex=(pageNo-1)*pageSize     blogList=Blog.objects.all().order_by("-createTime")[beginIndex:(pageNo-1)*pageSize+pageSize]#从数据库中查询所有数据     pages=ceil(Blog.objects.count()/4)     return render(request,"manager/show.html",{"blogList":blogList,"nextPage":pageNo+1,"prePage":pageNo-1,"pages":pages}) def blogDetail(request,id):     blog=Blog.objects.get(pk=id)     return render(request,"manager/detail.html",{"blog":blog})
转载请注明原文地址: https://www.6miu.com/read-2624340.html

最新回复(0)