Django框架-02數據庫鏈接丶簡單setting配置和form表單request相關

靜態文件

對於前段已經寫好了的文件 咱們只是拿過來使用 那麼這些文件均可以稱之爲叫"靜態文件"css

靜態文件能夠是
    bootstrap一類的前段框架 已經寫好了的
    圖片
    css
    js
靜態文件默認全都放在static文件夾下
    static文件夾中默認會默認建立的子文件夾
        css文件夾  當前網站全部的樣式文件
        js文件  當前網站全部的js文件
        img文件  當前網站全部的圖片文件
        其餘(前端框架代碼 第三方插件代碼...)

靜態文件配置

STATICFILES_DIRS = [
            os.path.join(BASE_DIR,'static')
    ]
    你只要輸入static文件夾內具體文件的路徑就可以訪問到

動態解析

靜態文件接口前綴"動態解析"
    {% load static %}

    <link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}">
    <script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>

form表單

默認是get請求,觸發提交數據的動做兩種方式前端

button

input type=submit

get: 攜帶數據的方式是url問好後跟數據
http://127.0.0.1:8000/login/?username=zekai&password=123python

ps:改爲post請求以後,若不在form表單位置加{% csrf_token %} 須要去settings文件中註釋掉一箇中間件mysql

MIDDLEWARE = [
            'django.middleware.security.SecurityMiddleware',
            'django.contrib.sessions.middleware.SessionMiddleware',
            'django.middleware.common.CommonMiddleware',
            # 'django.middleware.csrf.CsrfViewMiddleware',
            'django.contrib.auth.middleware.AuthenticationMiddleware',
            'django.contrib.messages.middleware.MessageMiddleware',
            'django.middleware.clickjacking.XFrameOptionsMiddleware',
        ]

form表單提交數據目的地由actionsql

  1. 不寫的狀況下 默認往當前地址提交
  2. 還能夠寫後綴/index/(將項目經常使用這種)
  3. 還能夠寫全路徑

Resquest

GET請求

視圖函數通常主要會先處理get請求數據庫

  • 默認爲一個字典取key,若是value一個列表 那默認只取列表最後一個元素django

    request.POST.get

  • 直接把列表所有取出(******)bootstrap

    request.POST.getlist

ps: 獲取value列表裏面全部的元素須要使用getlist 應用場景:用戶的愛好 多選框前端框架

django鏈接數據庫

1.須要修改配置文件

DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'day54',
            'HOST':'127.0.0.1',
            'PORT':3306,
            'USER':'root',
            'PASSWORD':'123'
        }
    }

2.告訴django用pymysql替換它默認mysqldb模塊鏈接數據庫

方式1:在你的項目文件夾下面的__init__.py
    方式2:也能夠在你的應用文件夾下面的__init__.py
    
    # 固定寫法
    import pymysql
    pymysql.install_as_MySQLdb()  # 告訴django用pymysql代替mysqldb鏈接數據庫

ps: django的orm不可以自動幫你建立庫,可是能夠自動幫你建立表session

數據庫遷移(同步)命令(******)

python3 manage.py makemigrations 將你的數據庫變更記錄到一個小本本上(並不會幫你建立表)
python3 manage.py migrate 將你的數據庫變更正在同步到數據庫中

相關文章
相關標籤/搜索