1. 程式人生 > >Python Django 學習筆記(一)-------Django基本操作及後端get解析

Python Django 學習筆記(一)-------Django基本操作及後端get解析

1.需求

釋出會簽到系統,嘉賓(Guest)管理和釋出會(Event)管理,增加發佈會搜尋和嘉賓搜尋功能

1.1前端實現嘉賓搜尋介面(guest_manage.html):

<!--嘉賓管理搜尋表單-->
        <!--根據name屬性中初始值“name”來獲取輸入查詢引數-->
        <div class="page-header" style="padding-top:60px;">
            <div id="navbar" class="navbar-collapse collapse">
                <form
class="navbar-form" method="get" action="/guest_search_name/">
<div class="form-group"> <input name="name" type="text" placeholder="名稱" class="form-control"> </div> <button type="submit" class="btn btn-success"
>
搜尋</button> </form> </div> </div>

1.2後端接收前段輸入並處理(views.py):

# 嘉賓名稱搜尋
@login_required
def guest_search_name(request):
    username = request.session.get('user', '')
    print(username)

    # ***********************************************************
# < !--根據name屬性中初始值“name”來獲取輸入查詢引數,此處name為前端引數name對應的初始name值,根據初始值去獲取對應輸入name值 # 這樣做的好處:當存在多個name輸入時,可以根據各個input name的初始值去獲取對應的輸入值 --> search_name = request.GET.get('name','') print(search_name) guest_list = Guest.objects.filter(realname__contains=search_name) print (guest_list) return render(request,"guest_manage.html",{"user":username, "guests":guest_list})

1.3特殊說明

後端解析輸入name並進行filter,search_name = request.GET.get(‘name’,”),其中get屬性中對應name為前端html中input name中name的初始值。如:name=”first_name”,則後端get時為:get(“first_name”);

判斷依據為:
根據name初始值和name屬性獲取對應input name值。

常見問題已解決方法:

Django應用建立
1.安裝django:pip install django
2.建立guest專案:django-admin startproject guest
3.建立sign應用:python manage.py startapp sign(sign中包含Guest和Event,嘉賓和釋出會物件)

開啟Django服務
1.cd C:/python36/Script/Guest
2.python migrate.py runserver

登陸mysql報Can’t connect to MySQL server (10060)問題
1.先看看mysql服務是否開啟,埠是否佔用
2.關閉windows防火牆,登陸mysql後再開啟

前端bootstrap3框架安裝
1.pip install django-bootstrap3
2.在setting.py檔案中,新增bootstrap應用,與新增guest應用方法一致

Django檔案解釋
views.py:後臺呼叫templates檔案中前端html檔案實現呼叫功能,用於控制前端頁面顯示的內容
models.py:django模型檔案,建立應用程式資料表模型(資料庫表建立)
admin.py:django自帶預設admin後臺
url.py:url路徑註冊,使用正則表示式匹配
templates:內部為前端html頁面
結構圖片