一些杂想
一些雜想
Django 筆記
(目前個人認為,Django 還是應該使用 Django1.11版本,穩定長期支持到2020年,兼容性也好。)
Django MTV 構架下的網站開發步驟:
編輯 models.py,創建數據庫表格。
編輯 views.py, 先 import 在 models.py 中創建的數據模型。
執行 python manage.py runserver 測試網站。
templates 模板的標準步驟:
在 template 中使用 static 文件
- 在 setting.py 中,設置 STATIC_URL 使用的網址,例如 STATIC_URL=‘/static’,也就是指定在網址中以/static/開頭的網址就視為要對靜態文件進行讀取。
- 在setting.py 中設置 STATICFILES_DIRS,這是設置靜態文件真正要存放的文件位置。一般而言都會放在網站目錄下的 static 文件夾中,所以都會以os.path.join(BASE_DIR, ‘static’)進行設置。
- 在 template 文件中使用靜態文件的專用加載模式。
- forloop.counter()是用來顯示當前是第幾個循環的一個計數器,forloop.counter()是從0開始計數的,而forloop.counter()是從0開始的。
- 模板中使用 { % url “account_signup” % } 這樣的標簽來自動產生相對應的網址。
- 要在網站中建立自定義標簽,就要在網站 App 目錄下創建一個 templates 文件夾,然后把要創建這些自定義標簽的函數放在這個文件夾想,自己命名一個文件,同時為了要讓這個文件夾可以被 Python 視為一個可導入的模塊,在同一個文件夾下還要創建一個 __init__.py 文件。
使用 models:
- 定義類,參數導入 models.Model,然后就可以使用 models.* 來指定數據表中每一個字段的特征。
- 首次設置 model 的內容要先執行 makemigrations 的指令以及 migrate 指令。執行后系統就會把我們設置的NewTable 數據表建立到數據庫中,可以在 setting.py 中修改數據庫類型。
- 編輯 models.py 后,一定要再執行migrate 才行(如果中間修改過,就需要先執行 makemigrations )。這兩個指令要求套用最新的數據表的新增或修正的內容)即先執行 makemigrations ,再執行 migrate 。
- 通過 python manage.py shell 進入 Python shell 。
- 在Python 3中,數字上不允許使用前導零, 數字前面寫0將表示8進制。
- mysite/migrations 的文件夾下有所有做過 makemigrations 的記錄,可以很容易地從這些文件的編號中看出變更的順序以及在每一個階段中變更的內容。如果有必要,可以直接修改這些內容,然后執行一次 python manage.py makemigrations 和 migrate 就可以反映出修改后的數據表結構。當然,如果不小心把所有內容都改亂了,那么把這個文件夾中除了__init__.py 文件外的所有文件都刪除,并刪除上一層目錄中的 db.sqlite3 數據庫文件,等于是所有數據庫內容全部重置,重新來過了。
站點引用Bootstrap插件的方式有兩種:
單獨引用:使用 Bootstrap 的個別的?*.js?文件。一些插件和 CSS 組件依賴于其他插件。如果您單獨引用插件,請先確保弄清這些插件之間的依賴關系。
編譯(同時)引用:使用?bootstrap.js?或壓縮版的?bootstrap.min.js。
不要嘗試同時引用這兩個文件,因為?bootstrap.js?和?bootstrap.min.js?都包含了所有的插件。
所有的插件依賴于 jQuery。所以必須在插件文件之前引用 jQuery。
使用 bootstrap 建議直接使用 CDN 鏈接的方式。放在<head></head>之間即可。一般是放在</head>這一行的前面。
jQuery 的 CDN 鏈接代碼放在</body>之前即可。
提交 post 請求時,會報:禁止訪問?(403),CSRF驗證失敗,請求被中斷錯誤。
這是 Django 為了防范網站 CSRF (Cross-site request forgery,跨站請求偽造) 攻擊的機制, 以確保黑客無法偽裝為已驗證過的瀏覽器而盜取數據。啟用這個功能(默認是啟用的)的設置在 setting.py 中的 'django.middleware.csrf.CsrfViewMiddleware'(在 MIDDLEWARE中的設置區塊中)。
我們在加載的 html文件提交表單的 <form>標簽下加上標識符:
{% csrf_token %}
同時在 views.py 文件中定義的函數修改 render 方法,實例如下:
- post請求:
- get 請求:
驗證機制
decorator@login_required 是 auth 驗證機制提供的一個非常方便的用法,用來告訴 Django 接下來的處理函數內容是需要登錄過后才能夠瀏覽的,如果還沒有登錄就想要執行這一操作,請先登錄括號中指定的 login_url 網址。
轉載于:https://www.cnblogs.com/weixuqin/p/9392515.html
總結
- 上一篇: lR关联功能总结
- 下一篇: Oracle搜索所有表查找关键字,根据关