day21--CSM项目-点赞评论,发布故障总结

day21 2018-09-09


1. 今日内容
    1. 我的中心页
        1. 布局 --> 母版
        
    2. 故障总结详情页
        1. 点赞和反对
            1. 需求分析
                1. 每一个人只能给一篇文章点一次推荐或者点一次反对
                2. 正常点赞功能
                    1. 
                3. 不能推荐/反对 本身的文章
            2. 实现 ORM进阶:https://www.cnblogs.com/liwenzhou/p/8660826.html
                1. Django ORM事务操做
                2. F查询
                    基于字段原来的值作操做的时候
                3. Q查询
                    查询条件是或的关系时
                
        2. 评论功能
            1. 评论的展现
                1. ORM反向查询用         --> 表名的小写
                2. ORM反向查询结果有多个 --> 表名小写_set.all()
                补充:
                    评论树如何实现?
                        
            2. 发表评论
            3. 带父评论的如何处理?
                1. JS里面的模板字符串
                2. jQuery中的事件委托
                3. XSS攻击
        3. 发布新故障总结
            1. 富文本编辑器插件使用 Kindeditor:http://kindeditor.net/doc.php
            2. 富文本编辑器上传图片的操做
            3. 如何清洗上传的内容
                使用beautifulsoup4模块
                安装:
                    pip install beautifulsoup4
                使用:
                    from bs4 import BeautifulSoup
                三个方法:
                    1. .decompose()
                    2. soup.text
                    3. soup.prettify()
    
2. 本周任务:
    1. 回去复习下 auth模块:https://www.cnblogs.com/liwenzhou/p/9030211.html
    2. 把Django ORM的知识点总结一下 :https://www.cnblogs.com/liwenzhou/p/8660826.html
        1.必知必会13条
        2. 神奇的双下滑线
        3. 基于对象的查询和基于query_set的查询
        4. 多对多关系的三种方式
            1. 使用默认的M2M
            2. 本身定义第三张表,分别外键关联
            3. 使用M2M,经过through和through_fields属性指定第三张表
            4. 如何使用ORM执行SQL语句
                1. 在执行ORM查询的同时额外执行一段SQL
                    .extra(select={....})
                2. 按照pymysql的方式执行
                    # 执行原生的SQL语句
                    # from django.db import connection
                    # cursor = connection.cursor()
                    # cursor.execute("select * from app01_book;")
                    # ret = cursor.fetchone()
                    # print(ret)
        5. 分组和聚合
            .annotate()
            .aggreate()
        6. Django ORM开始事务操做
            from django.db import transaction
            with transaction.atomic():
                数据库操做1
                数据库操做2
        7. F查询和Q查询
            from django.db.models import F, Q
            1. 当两个字段之间作比较查询或者须要在原来值的基础上作更新的操做--F
            2. 对查询结果作 或 操做    ------Q        
    3. 回去复习下jQuery:https://www.cnblogs.com/liwenzhou/p/8178806.html   http://jquery.cuishifeng.cn
        1. jQuery选择器
            1. 基本选择器
            2. 层级选择器
            3. 基本筛选器
            4. 属性选择器
            5. 表单经常使用    $(":text")
            6. 筛选器方法
        2. jQuery操做标签
            1. 文本操做
                1. text()
                2. html()
            2. 文档操做
                1. 内部操做
                    1. 内部的前面插入
                    2. 内部的后面追加
                2. 外部操做
                    1. 前面插入
                    2. 后面追加
            3. 属性操做
                1. 普通的文本属性操做
                    attr()
                2. 布尔值的属性操做
                    prop()
            4. 样式操做
                1. 操做class
                    1. addClass()
                    2. removeClass()
                    3. hasClass()
                    4. toggleClass()
                2. 直接操做CSS
                    .css("color", "red")
            5. 事件
                事件委托
            
            6. 内置动画效果
    4. 回去复习下JS的内容:https://www.cnblogs.com/liwenzhou/p/8004649.html
        1. JS基础语法
        2. 变量和数据类型
            字符串
                经常使用方法
            数字
            布尔值
            undefined
            对象
                数组和其经常使用方法
        3. 内置对象
            RegExp
            JSON
            Math
            Date
            
        
        
        
    5. 《钗头凤》唐婉
        世情薄
        人情恶
        雨送黄昏花易落
        晓风干,
        泪痕残
        欲笺心事
        独语斜阑
        难,难,难

        人成各,
        今非昨,
        病魂常似秋千索,
        角声寒,
        夜阑珊,
        怕人询问,
        咽泪装欢,
        瞒,瞒,瞒。    
        
        
        
        
        
        
        
    
    
    
    
    
    

 

day16-19 Django
day19下午-day21 项目

0909我的中心页面
内容说明:
cms(我的中心页面)--report_detatil.html,urls,views;add_report.html;orm复习查询全部评论,链式操做,事件委托;bs4示例

--demo(复习模板语言;事务操做,数值更新;执行原生的sql语句)
1、点赞页面
1. 布局--母版
2.带标签的要加入safe
3.复制别人的博客代码:选择元素--选择代码--右键-copy-copyouterhtml
4.拷贝别人的样式:复制粘贴style


5.模板语言 替换字符串

6.django中事务操做(都执行成功或都失败)

7.更新数值--点赞数加1;字段值之间做比较
import F
练习博客中F和Q查询的例子
Q查询----实现or

+"10"


下午:1.导入auth模块中的login_requiredLOGIN_URL = "/login/"2.orm很重要--整理orm2、评论页面展现评论楼:    展现全部评论    判断是否有父评论评论树:chouti    先画第一层的,在写有子评论的模板字符串:在settings中改成es6回复评论含父评论的评论更新评论数事件委托给input框设置值 写val给将来的标签绑定事件--on--事件冒泡xss攻击(跨站脚本攻击):在js中代码中写个死循环sql注入:数据库语句csrf(跨站请求伪造):csrf_token3、发布文章1.内容实现2.富文本编辑器    1.上传文本--注意文本的样式, notepad中复制的可能带python格式,手写的就无问题    2.上传图片    3.防止xss攻击:用beautifulsoup4 soup的三个用法    要求我的简介不能对标签进行切分,只能对文本 发布管理编辑以后的更新,修改密码--做业展现内容--查看文档按照留的任务复习写博客---听视频---写做业把html内容写母版
相关文章
相关标签/搜索