1. 程式人生 > >Django之簡易使用者系統(3)

Django之簡易使用者系統(3)

[toc] # 1. 總體設計思路 ![](https://img2020.cnblogs.com/other/1813756/202011/1813756-20201108175558048-1723734373.png) 一套簡單的使用者管理系統,包含但不限如下功能: - 使用者增加:用於新建使用者; - 使用者查詢:用於查詢使用者資訊; - 使用者修改:用於修改使用者資訊; - 使用者刪除:用於刪除使用者資訊; 最基本的功能就包括增、刪、改、查了。 想要搭建好一套系統,前期肯定是要設計一套思路,大家按照上圖對號入座即可。 下面,咋就開始實戰了... **劃重點了**,`一定要動手`、`一定要動手`、`一定要動手` ... # 2. 搭建簡易使用者系統 如果哪位同學還沒學習過上兩篇文章的,請速速去研究下,再來看這篇文章。 ## 2.1 配置模型Model `hello\models.py` 建立一個類(class)物件,這就相當於資料中的一張表(table)。 ```python # 建立資料庫User表 class User(models.Model): # 性別, 元組用於下拉框 sex = ((0, '男'), (1, '女')) # 使用者名稱 username = models.CharField(max_length=20, help_text='使用者名稱') # 使用者密碼 password = models.CharField(max_length=16, help_text='使用者密碼') # sex中的0,1是存放在資料庫,中文男和女是在web前端展示 sex = models.IntegerField(choices=sex, null=True, blank=True) # 手機號碼 phone = models.CharField(max_length=11, help_text='手機號碼') # 物件獲取返回值為使用者名稱 def __str__(self): return self.username ``` ## 2. 2 寫入資料庫: 後臺會轉換成`sql`語句寫入資料庫,看起來是不是很方便,也不用太懂`sql`了,這也是`ORM `的強大之處。 ```shell (py369) [root@localhost devops]# python manage.py makemigrations hello Migrations for 'hello': hello/migrations/0005_auto_20201105_2336.py - Create model User - Alter field id on devices (py369) [root@localhost devops]# python manage.py migrate Operations to perform: Apply all migrations: admin, auth, contenttypes, hello, sessions Running migrations: Applying hello.0005_auto_20201105_2336... OK ``` ## 2.3 資料庫驗證表: 我是通過`Navicat Premium`工具連線資料庫,進行視覺化檢視,你用哪個工具都可以。 ![](https://img2020.cnblogs.com/other/1813756/202011/1813756-20201108175558460-829157901.png) ## 2.4 路由URL配置: `hello\urls.py` name='xxxx',這是名稱空間的用法,常在模板使用此方式:`hello:adduser`,等同於`hello/adduser.html`, 好處就是不用擔心你的`path`隨意改變。 ```python from django.urls import path from django.urls import re_path from hello import view app_name = 'hello' urlpatterns = [ # FBV,通過函式方式,實現增刪改查 # 增加 path('adduser/', view.adduser, name="adduser"), # 查詢 path('showuser/', view.showuser, name="showuser"), # 修改 re_path('edit