django学习笔记 day3

视图的使用

概述:

  • 在Django中,视图是对web请求进行回应
  • 视图就是一个python函数,在views.py文件中定义。

定义视图

示例,在myApp\views.py中写入:

from django.shortcuts import render,redirect
# Create your views here.
from django.http import HttpResponse
def index(request):
    return HttpResponse("Like is a good man")

配置url

  • 方法1:通过path配置
    修改project目录下的urls.py文件
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('myApp.urls')),
]

在myApp应用目录下创建urls.py文件

from django.urls import path, include
from . import views
urlpatterns = [path('',views.index),]
  • 方法2:url
    修改project目录下的urls.py文件:
from django.contrib import admin
from django.conf.urls import url,include
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^', include('myApp.urls')),
]

在myApp应用目录下创建urls.py文件,写入:

from django.conf.urls import url
from . import views
urlpatterns = [
    url(r'^$', views.index),
]

模板的使用

概述:模板是HTML页面,可以根据视图中传递过来的数据进行填充

模板创建与配置

  • 创建模板
    创建templates目录,在目录下创建对应项目的模板目录(project/templates/myApp)

  • 配置模板路径
    修改settings.py文件下的TEMPLATES下的’DIRS’为’DIRS’: [os.path.join(BASE_DIR, ‘templates’)],

  • 定义grades.html与students.html模板
    在templates\myApp\目录下创建grades.html与students.html模板文件
    模板语法:
    {{输出值,可以是变量,也可以是对象,属性}}
    {%执行代码段%}
    假如我们有输入以下url显示学生班级信息的需求

    http://127.0.0.1:8000/grades/

写grades.html模板:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport"
          content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>班级信息</title>
</head>
<body>
    <h1>班级信息列表</h1>
    <ul>
        <!--[python04, python05, python06]-->
        {%for grade in grades%}
        <li>
            <a href="#">{{grade.gname}}</a>
        </li>
        {%endfor%}
    </ul>
</body>
</html>

定义视图:myApp\views.py

from .models import Students
def students(request):
     studentsList = Students.objects.all()
     return render(request, 'myApp/students.html', {"students": 
     studentsList})

配置url:myApp\urls.py

urlpatterns = [
            url(r'^$', views.index),
            url(r'^(\d+)/(\d+)$', views.detail),
            url(r'^grades/', views.grades),
            url(r'^students/', views.students),
        ]

django简单流程梳理

创建工程:执行 django-admin startproject 工程名
创建项目:执行 python manage.py startapp 项目名称
激活项目:修改 settings.py中的INSTALLED_APPS
配置数据库:

  • 修改__init__.py文件
  • 修改settings.py文件中的DATABASES

创建模型类:在项目目录下的models.py文件中创建
生成迁移文件:执行python manage.py makemigrations
执行迁移:执行python manage.py migrate
配置站点:略
创建模板目录/项目模板目录
在settings.py中的TEMPLATES添加templates路径
在工程目录下(project)修改urls.py
在项目目录下创建urls.py

发布了80 篇原创文章 · 获赞 332 · 访问量 70万+

猜你喜欢

转载自blog.csdn.net/qq_40527086/article/details/97886430