======================= 大爽歌作,made by big shuang =======================
一、基於類的視圖(Class-based views)介紹
1 介紹
Class-based views (CBVs) are views generated from models.
Class-based views:基於模型自動生成的視圖。
在web開發中,爲模型(models)製作各種各樣的視圖是工作量很大的事情,
Class-based views簡化了這些工作。
2 代碼
CBVs可以直接使用,例如在urls.py裏直接使用CreateView來添加學生實例
from django.urls import path
from django.views.generic import CreateView
from my_app.views import login
from my_app import view
from my_app.models import Student
urlpatterns = [
path('login/', login.page, name="login"),
path('hello/', view.hello),
path('register', CreateView.as_view(model=Student, template_name="register.html", success_url='login',fields="__all__"),
name="register"),
]
其中register.html
如下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>
Login
</title>
</head>
<body>
<div>Register</div>
<div>
<form method="post">
{% csrf_token %}
{{form.as_p}}
<p><input type="submit" value="Register"/></p>
</form>
</div>
</body>
</html>
Student
模型見Django自學筆記 4-1 模型(Models)介紹中的示例。
其他代碼見本專欄之前博客(實際上本文用不到)
此時運行項目後註冊頁面如下