Django从头学----学习笔记3

1、视图的基本:

视图对web请求进行回应

视图就是一个python的函数在views.py中定义

定义视图:在views.py文件中添加

from django.http import HttpResponse
def index(request):
    return HttpResponse('hello world')

2、配置url

修改project目录下的urls.py文件,

from django.conf.urls import url,include
from django.contrib import admin

urlpatterns = [
    url(r'^admin/', admin.site.urls),      
    url(r'^',include('myApp.urls')),       #站点后什么都不输入,匹配到myApp.urls.py文件下的url

]

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

from django.conf.urls import url
from . import views
urlpatterns = [
    url(r'^$',views.index),    #刚才站点后什么都不输入,匹配到这里,然后在调用视图views下的index函数,然后会在站点上显示出来我们需要服务器返回的内容
]

4、模板的基本

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

创建模板:在大项目中创建一个templates文件夹,和myApp、project同级,然后在目录下创建对应项目的模板目录(project/templates/myApp)

配置路径: 修改settings.py文件下的TEMPLATES,

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR,'templates')],
        'APP_DIRS': True,

 在刚才创建的模板文件夹下创建grades.html和students.html文件。

5、例:使通过在站点输入localhost:8000/grades     可以查出班级的视图

编写grades.html文件:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>班级信息</title>
</head>
<body>
    <h1>班级信息列表</h1>
    <ul>
        {%for grade in grades%}
        <li>
            <a href="#">{{grade.gname}}</a>
        </li>
        {%endfor%}
    </ul>
</body>
</html>

定义视图:在views.py文件下定义一个grades函数

from .models import Grades,Students
def grades(request):
    #去模板里取数据
    gradesList=Grades.objects.all()
    #将数据传递给模板,模板再渲染页面,将渲染好的额页面返回给浏览器
    return render(request,'myApp/grades.html',{'grades':gradesList})

配置url,在myApp\urls.py文件下添加url正则匹配式:

from django.conf.urls import url
from . import views
urlpatterns = [
    url(r'^$',views.index),
    url(r'^(\d+)/$',views.detail),   #匹配端口后输入数字时的情况。
    url(r'^grades/$',views.grades)   #匹配端口后输入grades(班级)时的情况。

这样就可以看到如下情况:

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值