一、创建项目
在mysite目录下创建job1 job2
Django-admin startapp job1
Django-admin startapp job2
二、创建templates
model有了,views有了,就差模板template,因为模板都是共用的,所以将template放在mysite目录下,与job1、job2同一级目录。如果只有一个项目或者两个项目不共用,可以将templates放在job1或者job2目录下
三、定义视图函数
定义视图函数(访问页面时的内容),我们在job1这个目录中,把views.py打开,修改其中的源代码,改成下面的:
from django.shortcuts import render
from django.shortcuts import HttpResponse
# Create your views here.
def Index(request):
return HttpResponse("<h1>Hello world !</h1>")
引入HttpResponse,它是用来向网页返回内容的,就像python中的print一样,只不过HttpResponse是把内容显示在网页上。
定义一个index()函数,第一个参数必须是request,与网页发来的请求有关,request变量里面包含get或post内容,用户浏览,系统信息在里面。函数返回一个HttpResponse对象,可以经过一些处理,最终显示在网页上。
render将返回模版
四、创建路由
定义视图函数相关的URL(地址)即规定访问什么网址对应什么内容。 打开 mysite/mysite/urls.py 这个文件,修改其中的代码:
from django.contrib import admin
from django.urls import path
from django.conf.urls import url
# 这是自己加的包
from job1 import views
urlpatterns = [
# path('admin/', admin.site.urls),
# 以index开头访问地址,如:http://127.0.0.1:8000/index/
url(r'^index',views.Index),
]
该path()传递四个参数,其中两个是必需的:route和view,以及两个可选的:kwargs和name。
route是一个包含UR模式的字符串,在处理请求时,Django从第一个模式开始url patterns并在列表中向下,将所请求的URL与每个模式进行比较,直到找到匹配的模式。
模式不搜索get和post参数或域名,URLconf将查找myapp/
view:当Django找到一个匹配的模式时,它会以一个HttpRequest对象作为第一个参数以及路由中的任何捕获值作为关键字参数来调用指定的视图函数。
kwargs:任意关键字参数可以在字典中传递给目标视图。
name:命名你的URL可以让你从Django其他地方明确的引用它,特别是在模版中,这个强大的功能允许你在只触摸单个文件的情况下对项目的URL模式进行全局更改。
五、运行
在终端上运行python manage.py runserver 0.0.0.0:8000(端口号可以改成自己的) 运行开发服务器。
六、访问
在浏览器中键入:http://127.0.0.1:8000/index/