django小例
阿新 • • 發佈:2018-07-16
cad 顯示 跨站腳本攻擊 eve https 頁面 ken des username 今日內容:
1、子評論評論樓的實現;評論樹尚未實現;
2、富文本編輯器的使用。
XSS攻擊全稱跨站腳本攻擊,為了不和層疊樣式表(Cascading Style Sheets, CSS)的縮寫混淆,故將跨站腳本攻擊縮寫為XSS,XSS是一種在web應用中的計算機安全漏洞,它允許惡意web用戶將代碼植入到提供給其它用戶使用的頁面中。
JsonRespones不能序列化對象。
在js中賦值一個全局變量,一定不要加var,否則它就變為一個局部變量。
$(".reply").click(function () {
var username = $(this).attr("comment_user");
var val = "@" + username + "\n";
$("#comment_content").focus().val(val);
parent_id = $(this).attr("comment_id");
});
文章描述只顯示文本,使用bs4模塊。
from bs4 import BeautifulSoup
# 切片文章文本
desc = soup.text[:200]
用戶上傳文章存儲的安全問題,bs4模塊,過濾特殊標簽和字符。
# 文章過濾
for item in soup.find_all():
if item.name in ["script",]:
item.decompose()
# 切片文章文本
desc = soup.text[:200]
article_obj = models.Article.objects.create(title=title,desc=desc,content=str(soup),category=category,user=user)
for tag in tags:
models.Article2Tag.objects.create(article=article_obj,tag=tag)
return redirect(reverse("backend"))
content=str(soup)
文章與標簽多對多的關系,我們沒有采用django自動生成的那張表,因此,多對多的關系需要我們自己在Article2Tag表中自己添加,不能再使用article_obj.tags.add()。
編輯的時候,可以先刪除當前文章與標簽的關系,再create。
特別註意:
def __str__(self):
return self.title
在models裏設置了__str__方法,在模板裏取{{ 對象 }},只能取到title,而不是一個對象。
django小例