bbs項目:

項目流程五步走:
1.需求分析: 
    分析出可以實現的需求來
2.項目設計:
    框架的設計,語言的使用,數據庫的使用(主庫+緩存庫),功能的劃分,框架的設計    
3.分組開發:
    將項目拆分紅一個個的模塊, 交給不一樣的組去完成    
4.測試
    自我測試
    測試部門測試(*****)
        注:顯而易見的bug(語法異常)  會扣 績效    
5.交付上線
    交給運維去上線        
開發者筆記(*****):小白到大牛的 技能成長曆程


數據庫表設計:
用到的表:
    用戶表,我的站點表,標籤表,分類表,文章表,點贊點踩表,評論表:

用戶表 對 我的站點表: 一對一;
我的站點表  對  標籤表,分類表,文章表: 一對多;
標籤表 對 文章表: 多對多;
分類表 對 文章表: 一對多;
點贊點踩表 對 用戶表,文章表  一對多;
評論表 對 用戶表,文章表 一對多

註冊:
    1.forms組件   實例化一個空對象
        用戶名   密碼    確認密碼    郵箱    
    2.利用forms組件渲染前端頁面
        用 ajax 提交,而不用form表單提交
        
    3.手動搭建獲取用戶頭像的 input框
        1.點擊圖片彈出選擇框   利用 label標籤 與 input 有綁定的關係的特徵
        2.文件閱讀器 (新知識點),實現圖片的實時展現
    
    4.後端 建立 用戶時  利用  **{}
        1.獲取  用戶 頭像   要作  判斷
    
    5.數據校驗不經過時,   將不過的信息   展現到對應的input框xia
        1.forms 組件 渲染的input框 的 id值  固定格式  id_字段名
        2.前端for循環字段   手動拼接id值
        3.給span 添加 報錯信息   給所在的div 加 has-error
    6.用戶在冊點擊input,將報錯信息 has-error 移除    
        
登陸:
    1.圖片驗證碼
        1.隨機驗證碼 (*****)
        2.img src屬性  可寫 圖片路勁,url,接收二進制數據
        3.pillow模塊的應用,  生成圖片驗證碼必備的對象
            pip3 install pillow
            極驗: 滑動 驗證碼  免費試用
            https://blog.csdn.net/wfy2695766757/article/details/81193370,
            https://www.liaoxuefeng.com/wiki/1016959663602400/1017785454949568,
        4.後端先校驗圖片驗證碼是否正確,而後判斷用戶輸入的用戶名和密碼是否一致
        
頁面搭建
    註銷與修改密碼: 能夠用模態框作出效果
    
    admin後臺管理:
        是一個幫你快速實現註冊了的模型表數據的增刪改查;
        用法: 1.先建立一個超級用戶   createsuperuser
        使用步驟:
            1.先去 對應的應用下的admin.py 中註冊你想要操做的表
                admin.site.registe(userinfo)
            2.使用超級管理員帳戶  進行數據的管理
            注: django admin 會自動給註冊了的模型表生產四條url
                    
    
    用戶頭像展現:
        網站使用的靜態文件通常都放在static文件夾下;
            用戶上傳的靜態文件通常放在專門的文件夾下(css,js,img,font)
            settings配置:
                MEDIA_ROOT = os.path.join(BASE_DIR,'media')
            url 路由配置:
                from django.views.static import serve
                from app01 import settings
                urls = [
                    url(r'^media/(?P<path>.*)',serve,{'document_root':settings.MEDIA_ROOT}
                    ]
                    注: 該配置能夠支持你暴露後端任意文件夾資源


    我的主頁搭建:
        1.頁面佈局  左右佈局
        2.左側的側邊欄
            文章分類
            文章標籤
            日期歸檔
        3.有側是該用戶的全部的文章
        4.側邊欄前端頁面渲染
            1.查詢當前用戶每個分類下的文章
            2.查詢當前用戶每個標籤下的文章數
            3.按照年月對文章進行分組並統計個數
            將結果傳遞到前端 完成前端樣式展現
        5.側邊欄篩選
            1.參考博客園  設計篩選功能的url
                username/category/1
                username/tag/1
                username/archive/2019-10
                #用正則   將 三條url 整合成一條
            2.篩選功能  對查詢出來的數據在進行一層過濾篩選    
    側邊欄渲染:模板的繼承
        自定義:inclusion_tag
        1,在應用內新建一個名字必須叫 templatetags 文件夾
        2,夾內 建 任意 py文件
        3,固定語式
            form django import template
            
            register = template.Library()
            
        4.日期歸檔 相關
            -官方提供
            from django.db.models.functions import TruncMonth
            models.Article.objects
            .annotate(month=TruncMonth('create_time'))  # Truncate to month and add to select list
            .values('month')  # Group By month
            .annotate(c=Count('id'))  # Select the count of the grouping
            .values('month', 'c')  # (might be redundant, haven't tested) select month and count
            
        
    文章詳情頁:
        
    點贊點踩功能:
        1.前端頁面點贊點踩樣式拷貝
            1.html和css代碼  都要 拷貝
            2.點贊點踩圖片設置了防盜鏈,建議下載下來
            3.如何區分頁面是點贊仍是點踩
                給贊與踩的圖標添加一個公共的樣式類
                給樣式類綁定一個點擊樣式
                再利用this判斷 當前被點擊對象是否有摸個獨立的樣式
            4.發送ajax請求
                參數  兩個   文章主鍵    點贊或點踩
                
            5.後端
                1.後端接收到的用戶點贊點踩參數是一個前端js的布爾值,
                    你能夠用json.loads轉換爲後端的布爾值類型
                2.驗證當前請求是不是ajax請求
                    request.is_ajax()
                3.驗證當前用戶是否登陸
                    request.user.is_authenticated()
                    
                4.驗證當前文章是不是當前用戶本身寫的
                
                    xxx
                
                5.驗證當前文章是否已經被當前用戶點過贊或踩了
                    xxx
                
                6.操做數據庫
                
            6.前端展現提示信息
                點贊或點踩成功  要將前端頁面對應的數字在原來的基礎上加一;
                
    用戶評論:
        1.前端獲取用戶評論樣式搭建
            只要用戶登陸才能看到評論
        2.前端利用ajax 發送 評論請求
            當前文章的主鍵
            評論的內容
        3.後端:
            1.驗證是不是ajax請求
                獲取主鍵   評論內容
            2. 操做數據庫        
                利用事物 完成兩個地方的同步
                    1.文章表裏的評論普通字段
                    2.評論表記錄
            3.前端展現評論樓信息
                後端獲取當前文章全部評論到前端
            4.評論渲染
                用戶點擊提交按鈕  輸了渲染外 還要將textarea框內容清空
                1.dom 靈石渲染
                2.render永久渲染
                    在渲染頁面是, for循環文章全部的評論一一渲染
            5.子評論功能
                子評論和跟評論的區別在paren_id 是否有值
                思路: 點擊回覆按鈕發身的是:
                    1.獲取當前登陸用戶想要評論的那條評論人的用戶名憑藉成  @用戶名\r\n
                    
                    2.將拼接好的內容添加到textares框中
                    3.textarea框字段聚焦
                    4.評論 子評論/跟評論 都是點擊一個按鈕
                    5.不管 是子評論/根評論 均可提交一個  parent_id  不管他是否有值
                    6.點擊回覆按鈕時  除了獲取評論人的用戶名外
    
    後臺管理:
        跟評論:
        子評論:
View Code
相關文章
相關標籤/搜索