Django 文件配置、pycharm及django鏈接數據庫、表的增刪改查 總結

靜態文件配置
1.你在瀏覽器中輸入網址可以有響應的資源返回給你
是由於後端已經提早給你開設該資源的接口,也就意味着你所能
訪問到的資源 都是人家事先定義好的css

2.django如何給用戶開設資源接口呢?
        在urls.py中 開設路由與視圖函數對應關係
    
    3.什麼是靜態文件
        網站所使用的已經提早寫好的css文件 js 圖片 第三方的類庫
        通常狀況下 咱們都默認將網站所用到的靜態文件統一放在一個叫
        static文件夾下
            該文件夾內部 還能夠根據文件類型的不一樣劃分紅不一樣的子文件
                css文件
                js文件
                font文件
                img文件
                第三方模塊專門的文件
                    B
                    F
        django不會自動幫你建static文件 須要你本身手動建立
    
    4.如何暴露靜態文件資源給用戶訪問
        django爲了你暴露方便 不須要你本身手動去urls.py中配置
        你只須要在settings.py配置便可
        
        STATIC_URL = '/static/'  # 訪問靜態文件資源接口前綴
        """
        若是你想訪問靜態文件資源 你必有以上面的名字開頭
        你纔有訪問靜態文件資源的權限
        
        一旦你是以接口前綴開頭  我會拿着接口前綴後面的文件路徑
        去下面的列表中從上往下去每個文件夾 找尋是否存在該文件 若是是直接返回
        
        """
        # 本身手動配置路徑
        STATICFILES_DIRS = [
            os.path.join(BASE_DIR,'static'),  # 靜態文件 存放在的文件路徑
            os.path.join(BASE_DIR,'static1'),  # 靜態文件 存放在的文件路徑
            os.path.join(BASE_DIR,'static2'),  # 靜態文件 存放在的文件路徑
        ]
        
        
    5.接口前綴動態綁定
        html頁面上的接口前綴跟你的配置文件中接口前綴動態綁定
        
        在html頁面上  固定寫句式
        {% load static %}
        <script src='{% static 'Bootstrap/css/min.css' %}'></script>        

request對象
    該對象內部包含了全部請求相關的數據
    request.method  獲取前端發送的請求方式
        GET
        POST
        全大寫的字符串類型
        
        攜帶數據的方式
            GET請求攜帶數據的方式
                url?username=jason&password=123
            # 只要你的ulr後面符號get請求攜帶參數的特色 那麼不管你發什麼請求 你均可以經過request.GET獲取數據
        
    request.GET  獲取符合GET請求攜帶數據的方式
        你能夠把它當作一個大字典
        request.GET.get()  # 默認只拿value列表中最後一個元素
        request.GET.getlist()  # 拿value整個列表
    
    request.POST  獲取post請求攜帶過來的數據
        你能夠把它當作一個大字典
        request.POST.get()  # 默認只拿value列表中最後一個元素
        request.POST.getlist()  # 拿value整個列表

pycharm連接數據庫
    左下方
    或者右側邊緣都有鏈接入口
    你只須要注意在第一次鏈接數據庫的時候 須要下載一個數據庫的驅動

django連接MySQL
    django默認自帶一個小型的sqlite(對日期格式的數據 不太兼容)
    
    必定要注意是兩步
        1.在settings文件中配置
            DATABASES = {
                "NAME":...
                "HOST":...
                "PORT":...
                "USER":...
                "PASSWORD":...
                "CHARSET":'utf8'
            }
        
        2.須要在項目名下面的__init__.py或者app下面的__init__.py文件中配置一下
            告訴django不要使用默認的mysqldb模塊鏈接數據庫 而是使用pymysql
            import pymysql
            pymysql.install_as_MySQLdb()

django orm簡介
    對象關係映射
    
    # 注意:django的orm不會自動幫你建立數據庫  須要你手動本身建立數據庫
    # orm只能幫你自動建立表 
    # 我的建議:針對不一樣的django項目 使用不一樣的庫 不要多個項目公用一個數據庫
    
    
    你要去app下面的models.py中書寫模型類
    
    表字段的書寫
        class User(models.Model):
            # django orm當你沒有指定主鍵的時候 orm會自動幫你新建一個字段名爲id的主鍵字段
            # 可是若是你的主鍵字段不想叫id 那麼你只能手動設置 一旦orm識別到你手動設置了主鍵 它就再也不自動建立
            # id = models.AUTOField(primary_key = True)
            username = models.CharField(max_length=32)  # CharField字段必定要指定max_length參數
            password = models.IntegerField()
        
    數據庫遷移命令
        將在models裏面的操做同步到數據庫中
        python3 manage.py makemigrations  # 將數據庫操做記錄到小本本上  migrations文件夾內   日誌功能  該命令不會直接影響數據庫

        python3 manage.py migrate  # 將記錄真正的同步到數據庫中
        """
        只要你動了跟數據庫相關的models中的代碼 你就必須執行上面的命令
        一個都不能少  順序也不能跌倒         
        """
                

字段的增刪改查
    增字段的時候
        1.給新增的字段設置默認值
        2.給新增的字段設置爲容許爲空
數據的增刪改查
    查
        models.User.objects.all()  # 查詢全部
        models.User.objects.filter(**kwargs)  # 條件之間是and的關係
        # filter的結果你能夠當作是一個列表 支持索引取值和切片操做 可是不支持負數
        .first()
        
    增
        user_obj = models.User.objects.create(**kwargs)
        # 該方法有一個返回值 就是當前被建立的對象自己
    
    改
        models.User.obejcts.filter(id=1).update(**kwargs)
        # 批量更新
    刪
        models.User.obejcts.filter(id=1).delete()
        # 批量刪除
相關文章
相關標籤/搜索