python全栈开发day80--评论楼、评论树
内容总结:
1. 内容回顾
1. 内容回顾
1.评论
1. 展示评论
1. 评论楼(Django模板语言渲染)
1. 从后端查询出所有的评论
2. 如果有父评论就展示父评论 2. 评论树
通过ajax在页面刷新的时候去拉取所有的评论 2. 发表评论
1. 发表评论(ajax提交)
1. 通过AJAX发送到后端
1. 判断是否是子评论
1. 给回复按钮绑定点击事件
1. 要给未来的标签绑定事件一定要用事件委托
事件委托利用的原理是事件冒泡
2. jQuery事件委托的写法:
$("已经存在的标签").on("click", ".repaly", function(){})
2. jQuery对象.data()
1. jQuery对象.data("k1", "v1") --> 给jQuery对象保存了一个k1:v1
2. jQuery对象.data("k1") --> 取k1对应的值,取不到返回undefined
3. jQuery对象.removeData("k1") --> 删除k1对应的值
4. jQuery对象.removeData() --> 删除所有键值对
3. JS的三元运算
条件?值1:值2
4. 值1 || 值2 --> 如果值1为真就用值1,否则用值2
5. +"" --> 把字符串快速转换成数值类型的小技巧
6. 字符串的相关用法
1. s.slice(start,) --> 按索引对字符串切片
2. s.indexOf('\n') --> 求指定字符在字符串中的索引
7. 任何标签都可以加自定义属性
jQuery求标签的属性:$("div").attr("k") 2. 后端注意事项:
1. 创建一条新评论
1. 判断是否是子评论,如果是子评论创建评论记录时要传父评论id值 2. 更新对应文章表中的comment_count
.update(comment_count=F("comment_count")+1) 2. 通过DOM操作把评论显示在页面上
1. ES6的模板字符串:https://www.cnblogs.com/liwenzhou/p/9249932.html
`${变量名}`
2. jQuery的文档操作 jQuery中文文档:http://jquery.cuishifeng.cn/
1. 内部添加
1. 前面:prepend
2. 后面:append
2. 外部添加
1. 前面:before
2. 后面:after 2. 文章后台
1. 发布文章
1. kindeditor插件
2. BS4:https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/
1. 安装:
pip install beautifulsoup4
2. 简单使用
1. from bs4 import BeautifulSoup
# 对一段HTML格式的内容做解析
soup = BeautifulSoup('html内容', 'html.parser')
2. 找标签:
soup.a
3. 找标签的样式:
soup.a["class"]
4. 找特定的标签
soup.select("script")
5. 删除标签
.decompose()
6. 取text文本内容
soup.text
7. 格式化html内容
soup.prettify() 2. 删除文章
3. 修改文章
知识点总结
python全栈开发day80--评论楼、评论树的更多相关文章
- Python全栈开发【面向对象进阶】
Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...
- Python全栈开发【面向对象】
Python全栈开发[面向对象] 本节内容: 三大编程范式 面向对象设计与面向对象编程 类和对象 静态属性.类方法.静态方法 类组合 继承 多态 封装 三大编程范式 三大编程范式: 1.面向过程编程 ...
- Python全栈开发【模块】
Python全栈开发[模块] 本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser loggin ...
- Python全栈开发【基础四】
Python全栈开发[基础四] 本节内容: 匿名函数(lambda) 函数式编程(map,filter,reduce) 文件处理 迭代器 三元表达式 列表解析与生成器表达式 生成器 匿名函数 lamb ...
- Python全栈开发【基础三】
Python全栈开发[基础三] 本节内容: 函数(全局与局部变量) 递归 内置函数 函数 一.定义和使用 函数最重要的是减少代码的重用性和增强代码可读性 def 函数名(参数): ... 函数体 . ...
- Python全栈开发【基础二】
Python全栈开发[基础二] 本节内容: Python 运算符(算术运算.比较运算.赋值运算.逻辑运算.成员运算) 基本数据类型(数字.布尔值.字符串.列表.元组.字典) 其他(编码,range,f ...
- Python全栈开发【基础一】
Python全栈开发[第一篇] 本节内容: Python 的种类 Python 的环境 Python 入门(解释器.编码.变量.input输入.if流程控制与缩进.while循环) if流程控制与wh ...
- python 全栈开发之路 day1
python 全栈开发之路 day1 本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...
- Python全栈开发
Python全栈开发 一文让你彻底明白Python装饰器原理,从此面试工作再也不怕了. 一.装饰器 装饰器可以使函数执行前和执行后分别执行其他的附加功能,这种在代码运行期间动态增加功能的方式,称之为“ ...
随机推荐
- ansible笔记(8):常用模块之系统类模块(二)
ansible笔记():常用模块之系统类模块(二) user模块 user模块可以帮助我们管理远程主机上的用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作. 此处我们介绍一些user模块 ...
- Golang 优化之路-空结构[转]
写在前面 开发 hashset 常用的套路: map[int]int8 map[int]bool 我们一般只用 map 的键来保存数据,值是没有用的.所以来缓存集合数据会造成内存浪费. 空对象 空对象 ...
- datatables日常使用集合
datatables CDN链接地址: <link rel="stylesheet" type="text/css" href="https:/ ...
- CodeVs 3150 (大数 + 递推)
#include<iostream> #include<cstdio> #include<cstring> #include<string> #incl ...
- Less常用知识点
上篇文章介绍了如何安装Less,我们将所有东西都写在.less里面,最后通过命令将.less转换成.css文件,就可以放入到项目里用了.今天了解一些less常用知识点. 1.变量:声明两个变量,一个是 ...
- elasticsearch中的java.io.IOException: 远程主机强迫关闭了一个现有的连接
[2018-07-31T14:29:41,289][WARN ][o.e.x.s.t.n.SecurityNetty4HttpServerTransport] [9rTGh-y] caught exc ...
- JavaWEB后端支付银联,支付宝,微信对接
注:本文来源于:< JavaWEB后端支付银联,支付宝,微信对接 > JavaWEB后端支付银联,支付宝,微信对接 标签(空格分隔): java 项目概述 最近项目需要后端打通支付,所 ...
- Confluence 6 中进行用户管理的优化配置和限制的基本建议
避免跨目录的多个用户名:如果你连接了超过一个的目录服务器,我们建议你需要确定你的用户名在目录服务器中是唯一的.例如:我们不建议你定义一个用户同时在'Directory1' 和 'Directory2' ...
- linux学习笔记:第二单元 UNIX和Linux操作系统概述
第二单元 UNIX和Linux操作系统概述 UNIX是什么 UNIX操作系统的特点 UNIX 与Linux的关系 GNU项目与自由软件 GUN计划 自由软件意味着什么 Linux简介 Linux是什么 ...
- svn上check下来的项目,用idea打开,菜单栏没有svn工具解决办法
1.用idea打开你的项目(idea已经配置过小乌龟了) 2.菜单栏点击VCS,Enable Version Control Integration... 3.选择Subversion 4.这时候,菜 ...