18.3 创建网页:学习笔记主页
使用Django创建网页的过程通常分为三个阶段:定义URL,编写视图和编写模板
首先,你必须定义URL模式.URL模式描述了URL是如何设计的
每个URL都被映射到特定的视图----视图函数获取并处理网页所需的数据。
视图函数通常调用一个模板,后者生成浏览器能够理解的网页
18.3.1 映射URL
用户通过在浏览器输入URL以及单击连接来请求网页,因此我们需要确定项目需要哪些URL。
urls.py
node2:/django/mysite/learning_log/learning_log#cat urls.py
"""learning_log URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/1.11/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: url(r'^$', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.conf.urls import url, include
2. Add a URL to urlpatterns: url(r'^blog/', include('blog.urls'))
"""
from django.conf.urls import include,url
from django.contrib import admin
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^log/',include('learning_logs.urls')),
]
默认的urls.py包含在文件夹learning_log中,我们需要在文件夹learning_logs中创建另一个urls.py
node2:/django/mysite/learning_log/learning_logs#cat urls.py
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$',views.index),
]
为弄清楚当前位于哪个urls.py文件中,我们在这个文件开头添加了一个文档字符串。
接下来,我们导入了函数url,因为我们需要使用它来将URL映射到视图
18.3.2 编写视图
视图函数接受请求中的信息,准备好生成网页所需的数据,再将这些数据发送给浏览器
node2:/django/mysite/learning_log/learning_logs#cat /django/mysite/learning_log/learning_logs/views.py
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.shortcuts import render
# Create your views here.
def index(request):
return render(request,'learning_logs/index.html')
18.3.3 编写模板
模板定义了网页的结构,模板指定了网页是什么样的。而每当网页被请求时,Django将填入相关的数据。
模板让你能够访问视图提供的任何数据
在文件夹learning_logs中新建一个文件夹,并将其命名为templates.
node2:/django/mysite/learning_log/learning_logs#cat /django/mysite/learning_log/learning_logs/templates/learning_logs/index.html
leanging logs