目录
上一篇:Python初学记之Django_Link2Points的博客-CSDN博客
一、关于MTV
- Model: 模型层,构建和操纵的Web应用的数据,如数据库操作
- Templetes: 模板层,与用户直接接触的前端html
- View: 视图层,负责处理用户的请求并返回响应
二、管理页面
# 创建管理员
python manage.py createsuperuser
# 接着输入用户名、邮箱、密码
访问http://ip地址/admin
三、写个POST表单
Templetes(一般Pycharm创建项目时,勾选创建;若无,手动在mysite目录下创建)下新建login.html、index.html
login.html中(在html中嵌入的语言目前看不能执行复杂的操作)
<form action="{% url 'verify_login' %}" method="post">
<input type="text" name="user_id" required="required" />
<input type="submit" name="loginBtn" value="登录">
</form>
创建test应用后,在改test目录下views.py中
# 登录页面
def login(request):
return render(request, "login.html")
# 验证登录
def verify_login(request):
if request.method == "POST":
police_id = request.POST.get('user_id')
# 这里可以设置数据库查询操作(调用models.py写好的函数)
# 设置session
request.session['user_id'] = user_id
# 租期 24 h
request.session.set_expiry(60 * 60 * 24)
if not user_id == "":
return index(request)
return login(request)
# 主页
def index(request):
# 获取session并验证, 如无跳转至登录页
police_info = request.session.get('police_info')
if police_info is None:
return login(request)
return render(request, "index.html", {"data1":"数据","datas1":["数据","数据"]})
在mysite/mysite/urls.py中
from django.contrib import admin
from django.urls import path
from test.views import *
urlpatterns = [
path('admin/', admin.site.urls),
path('', verify_login, name="verify_login"),
path('login.html', login, name="login"),
path('index.html', index, name="index")
]