Django框架基础篇-如何返回静态HTML文件网页

目录

参考官方文件信息

1.准备前端文件

2. 实现流程

3. 测试结果:


参考官方文件信息

链接地址:https://docs.djangoproject.com

目的:  返回静态HTML文件也页面

1.准备前端文件

1.准备前端html文件(将html文件放入templates 目录中)

1.1. 就是在Django工程下的创建 templates 目录,

1.2. 创建一个 index.html 和 login.html 文件,写入HTML代码




    
    
    首页
    


    

我的首页

用户名:
密码:



    
    
    登陆成功
    


    

登录成功

转到转到个人中心

2. 实现流程

2.1. 项目的配置(settings.py中)

# HTML文件配置信息
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS':[os.path.join(BASE_DIR, 'templates')], # html文件路径
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

2.2. 视图views.py

from django.shortcuts import render, redirect

from django import http
from django.views import View


class LoginView(View):
    """
    登录成功界面 http://127.0.0.1/users/login/
    """

    def post(self, request):
        """
        :param request:
        :return:
                """
                # 1.接收参数
        username = request.POST.get("username")
        password = request.POST.get("password")
        print(f"username:{username},password:{password}")

        # 2.校验参数 全体校验all()方法
        if not all([username, password]):
            return http.HttpResponse("缺少必要参数")
        # 3. 验证密码
        if password != "123456":
            return http.HttpResponse("账户或者密码错误!!!")
        # 4. 设置状态保持,使用cookie 实现
        # render() 数据渲染HTML页面
        Response = render(request, 'login.html')

        Response.set_cookie("username", username, max_age=120)
        Response.set_cookie("user_id", 1, max_age=120)
        # 5. 返回响应数据
        return Response


class CenterView(View):
    """个人中心数据"""

    def get(self, request):
        """
        个人中心数据请求路径:
            http://127.0.0.1:8000/users/center/
        :param request:
        :return:
        """
        # 1. 获取cookie数据
        username = request.COOKIES.get("username")
        user_id = request.COOKIES.get("user_id")
        return http.HttpResponse(f"username:{username},user_id:{user_id}")

2.3. 子路由中: urls.py

from django.contrib import admin
from django.urls import path

from . import views


urlpatterns = [
    # 登录成功界面路由: http://127.0.0.1:8000/users/login/
    path("login/",views.LoginView.as_view()),

    # 个人中心数据请求路径:http://127.0.0.1:8000/users/center/
    path("center/",views.CenterView.as_view()),
]

3. 测试结果:

>> 首页(index.html)

Django框架基础篇-如何返回静态HTML文件网页_第1张图片

>> 登录成功界面(login.html)

Django框架基础篇-如何返回静态HTML文件网页_第2张图片

 

你可能感兴趣的:(Django框架基础篇,python,django)