""" 當一個文件夾下文件比較多的時候 你還能夠繼續建立文件夾分類處理 templates文件夾 backend文件夾 應用1文件夾 應用2文件夾 """
有兩個須要注意的問題 1.文章的簡介 不能直接切去 應該先想辦法獲取到當前頁面的文本內容以後截取150個文本字符 2.XSS攻擊 針對支持用戶直接編寫html代碼的網址 針對用戶直接書寫的script標籤 咱們須要處理 1.注視標籤內部的內容 2.直接將script刪除 如何解決? 咱們本身的話 針對1 後端經過正則表達式篩選 針對2 首先須要肯定及獲取script標籤 這兩步都好煩 有木有人來幫我一下 beautifulsoup模塊 bs4模塊 專門用來幫你處理html頁面內的 該模塊主要用於爬蟲程序 下載千萬不要下錯了 pip3 install beautifulsoup4 # 模塊使用 soup = BeautifulSoup(content,'html.parser') tags = soup.find_all() # 獲取全部的標籤 for tag in tags: # print(tag.name) # 獲取頁面全部的標籤 # 針對script標籤 直接刪除 if tag.name == 'script': # 刪除標籤 tag.decompose() # 文章簡介 # 1 先簡單暴力的直接切去content 150個字符 # desc = content[0:150] # 2 截取文本150個 desc = soup.text[0:150] """ 當你發現一個數據處理起來不是很方便的時候 能夠考慮百度搜搜有沒有現成的模塊幫你完成相應的功能 """
別人寫好了接口 可是接口不是你本身的 你須要手動去修改 # 在使用別人的框架或者模塊的時候 出現了問題不要慌 看看文檔可能會有對應的處理方法
@login_required def set_avatar(request): if request.method == 'POST': file_obj = request.FILES.get('avatar') # models.UserInfo.objects.filter(pk=request.user.pk).update(avatar=file_obj) # 不會再自動加avatar前綴 # 1.本身手動加前綴 # 2.換一種更新方式 user_obj = request.user user_obj.avatar = file_obj user_obj.save() return redirect('/home/') blog = request.user.blog username = request.user.username return render(request,'set_avatar.html',locals())
""" 在開發任意的web項目的時候 其實到了後期須要寫的代碼會愈來愈少 都是用已經寫好的url填寫到a標籤href屬性完成跳轉便可 """ 主要功能總結 表設計 開發流程(粗燥流程 還能夠細化) 註冊功能 forms組件使用 頭像動態展現 錯誤信息提示 登錄功能 圖片驗證碼 滑動驗證碼 首頁展現 media配置 主動暴露任意資源接口 我的站點展現 側邊欄展現 側邊欄篩選 側邊欄inclusion_tag 文章詳情頁 點贊點踩 評論 後臺管理 """ 針對bbs須要你掌握每個功能的書寫思路 內部邏輯 以後再去敲代碼熟悉 找感受 """