Python學習第157天(關於繫結事件部分的知識回顧)
準確的說,已經有近20天沒有進行更新了,不得不說,本來就記得不多的內容真的快忘完了,所以這兩天還是抓緊回憶一下之前的幾個關鍵內容。
一、ajax
基本是實現自動向後臺傳送請求的功能,從而保證將錯誤提前發現,常用在註冊時檢測是否有不合法輸入。
使用方法:
二、關於模板在html中的模板語句
關於自定義filter和simple_tag
filter是單個引數的函式,而simple_tag則可以使用多個引數,但是前者需要{ 引數|函式:引數 }的方式,simple_tag不需要,其使用{ { 函式名 引數1 引數2 引數3.。。 } }引數之間通過逗號分開
使用方法:
1.新建py檔案
2.檔案內容中採用固定格式匯入
from django import template from django.utils.safestring import mark_safe register = template.Library()
3.根據所選則要建立的函式要求,分別在自定義方法前增加字首 @register.filter 或@register.simple_tag
4.在html檔案中匯入建立的py檔案,方法是{% load py檔名 %}
filter函式只能傳遞兩個引數,而且其中一個引數必須是呼叫者自己
{{ 呼叫函式的引數 | 函式名 : 第二個引數}}
simple_tag的函式可以傳遞多個引數
{ % 函式名 空格 引數1 空格 引數2.。。。。。 % }引數之間用空格分開
5、在settings中的INSTALLED_APPS配置當前app,不然django無法找到自定義的simple_tag.
特別注意:filter可以用在if等語句後,simple_tag不可以
三、使用者名稱不能含有'haha',密碼不能小於3位數
前端:
{% if num >= 100 and 8 %} {% if num > 200 %} <p>num大於200</p> {% else %} <p>num大於100小於200</p> {% endif %} {% elif num < 100%} <p>num小於100</p> {% else %} <p>num等於100</p> {% endif %} {% if %} 標籤接受and,or或者not來測試多個變數值或者否定一個給定的變數 {% if %} 標籤不允許同一標籤裡同時出現and和or,否則邏輯容易產生歧義,例如下面的標籤是不合法的: {% if obj1 and obj2 or obj3 %}
後端:
# 後端 def login(request): # 定義一個報錯資訊字典,用於前端span標籤錯誤提示 errors = {'username':'', 'password':''} if request.method == 'POST': # 獲取到使用者名稱合密碼 username = request.POST.get('username') password = request.POST.get('password') # 判斷使用者名稱和密碼規則 if 'haha' in username: errors['username'] = '使用者名稱不規範' if len(password) < 3: errors['password'] = '密碼不能小於位' return render(request, 'login.html', locals())
四、停更之前的bootstrap和frontawesome
主要目的是讓我們這種沒有審美的基礎練習者把畫面做的更美,所以目前我急需把之前稍微有點樣子的東西做的好看一些,
暫時就是這些,因為今天開始看不懂的地方太多了,時間有限,就是這些了。