Django創建App並簡單實現登錄模塊


Django創建App並簡單實現登錄模塊

什么是Django的APP?

此APP非andriodAPP。Django的APP可以理解為一個網站中的一個模塊,我們可以將每個模塊都單獨寫成一個APP,這樣可以讓項目變得相對整潔且更加好維護起來。

如何創建App?

1、創建Django工程 - BlogPorject

django-admin startproject BlogPorject

2、創建App

django-admin startapp application

App目錄介紹:

  • application

    • admin.py: 網站后台管理相關
    • apps.py:
    • models.py: 寫和數據庫相關的內容
    • tests.py: 寫測試代碼的文件
    • views.py: 接收請求,處理數據 與M(數據庫)和T(templates 模版 )進行交互
    • migrations:

簡單實現一個登陸模塊

1、配置settings,加上static和templates的配置(BlogPorject/settings.py)

2、畫所需要的HTML文件

login.html:表單提交的url "/myapp/loginx" 就是處理登錄信息的。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登錄</title>
</head>
<body>
<form action="/myapp/loginx">
    賬號:<input type="text" name="account"><br>
    密碼:<input type="password" name="pwd"><br>
    <input type="submit" value="登錄">
</form>
</body>
</html>
index.html:登錄成功以后會跳轉到index頁面
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>首頁</title>
</head>
<body>
This is index page!
</body>
</html>
login_error.html:登錄失敗會跳轉到login_error頁面
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>登錄失敗</title>
</head>
<body>
登錄失敗!!!
</body>
</html>

3、實現對應的view方法(/application/views.py)

from django.shortcuts import render
# Create your views here.

def login(request):
    """進入到登錄頁面"""
    return render(request, './login.html')

def loginx(request):
    """點擊登錄后的邏輯處理"""
    account = request.GET['account']
    pwd = request.GET['pwd']
    if account == "desire" and pwd == "123456":
        return render(request, './index.html')
    else:
        return render(request, './login_error.html')

4、配置application的路由(/application/urls.py)

from django.urls import path
from application import views

urlpatterns = [
    path('login/', views.login),
    path('loginx/', views.loginx)
]

5、配置主路由(/BlogPorject/urls.py)

from django.contrib import admin
from django.urls import path, include
from application import urls

urlpatterns = [
    path('admin/', admin.site.urls),
    path('myapp/', include(urls))
]

6、啟動工程,在瀏覽器輸入 http://127.0.0.1:8080/myapp/login/ 進入到登錄頁面

登錄成功,因為是get請求,在url后面就可以看到參數信息

登錄失敗

至此,一個簡陋的登錄模塊就已經簡單的實現了。

一個工程中可以有多個App。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM