django从入门到入土(五)

发布于:2023-01-08 ⋅ 阅读:(518) ⋅ 点赞:(0)


活动地址:CSDN21天学习挑战赛

django从入门到入土(五)

视图和url

如果要了解视图和url的概论和原理请回顾前面django系列的MTV架构

编写一个简单的视图

打开子应用目录下的views.py文件

写入如下代码:

from django.shortcuts import render #这一行是默认配置的 无需添加
from django.http import HttpResponse
# Create your views here.
def index(request):
    data='hello django'
    return HttpResponse(data)

添加路由(匹配url)

URL 样式是 URL 的一般形式 - 例如:/newsarchive/<year>/<month>/

为了将 URL 和视图关联起来,Django 使用了 ‘URLconfs’ 来配置。URLconf 将 URL 模式映射到视图。

打开主应用下的urls.py文件

导入刚刚编写的视图包下的index函数

from slaveapp.views import index

然后在urlpatterns这个列表里添加如下代码

path("index/",index)

如下,成功截图

请添加图片描述

为了便于项目的维护,不可能所有url都在总路由配置,接下来进行子路由的配置

配置子路由

在子应用创建urls.py文件加入如下代码

from django.urls import path
from .views import index



urlpatterns = [
    path("index/",index)
]

接下来在总urls相关配置打开总应用urls:

from django.urls import path,include  #重点是加上后面这个include

然后同样在总urls文件下的urlpatterns列表里面添加:

path("",include('slaveapp.urls'))

到这里子路由配置完成

模板使用

  1. 创建模板
  2. 设置模板查找路径
  3. 模板接受视图传入数据
  4. 模板处理数据

项目根目录下创建模板文件夹templates

例如下图

请添加图片描述

settings文件中配置templates文件夹

settings文件夹下找到

TEMPLATES = [
    {
        "BACKEND": "django.template.backends.django.DjangoTemplates",
        "DIRS": [],
        "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",
            ],
        },
    },
]

对其中的DIRS对应列表进行一个配置

        "DIRS": [os.path.join(BASE_DIR),'templates'],

在templates文件夹下创建html文件

如下图

请添加图片描述

创建一个函数视图,让当前函数视图返回html文件

views文件中创建函数视图

def index_html(request):
    return render(request,'index.html')

在子路由urls配置视图url (记得导包index_html)

from .views import index_html



urlpatterns = [

    path('index_html/',index_html)
]

重新运行结果如下图

请添加图片描述

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到