发布时间:2018-06-09 21:40:13编辑:admin阅读(5572)
上一篇讲到创建了一个空的项目mysite
下面讲如何增加一个简单页面,显示系统当前时间
在mysite目录下修改urls.py
先引用blog应用,再定义新的url
效果如下:
from django.contrib import admin from django.urls import path from blog import views urlpatterns = [ path('admin/', admin.site.urls), path('cur_time/', views.cur_time), ]
注意,用Pycharm启动时,必须打开的是当前项目,不能打开多个项目
否则urls.py的
from blog import views 这一段代码是红色的,会误认为报错
在blog目录下修改views.py
需要加载HttpResponse模块
from django.shortcuts import render,HttpResponse import datetime # Create your views here. def cur_time(request): return HttpResponse("<h1>ok</h1>")
request这个参数必须要有,因为它包含了一些http请求信息
HttpResponse可以直接返回一个html标签
启动应用,访问页面
http://127.0.0.1:8000/cur_time/
直接用HttpResponse返回一个html标签不太好,如果代码比较多,就不合适了。
下面介绍如何加载一个html文件
修改views.py文件
from django.shortcuts import render,HttpResponse import datetime # Create your views here. def cur_time(request): # 获得当前时间 now = datetime.datetime.now() # 转换为指定的格式: otherStyleTime = now.strftime("%Y-%m-%d %H:%M:%S") # render用来加载html文件,{}里面是要传给模板的的变量 return render(request, "cur_time.html", {"abc": otherStyleTime})
修改settings.py文件
定义html的文件位置
TEMPLATES变量里面的 'DIRS': [] 需要修改,效果如下:
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')], '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', ], }, }, ]
表示当前项目下的templates目录
在站点根目录创建templates文件夹(静态页面)
在tempates目录下创建cur_time.html文件
内容如下:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <h1>当前时间: {{ abc }}</h1> </body> </html>
模板渲染变量时,需要用{{ 变量名}}才能显示,abc是views传给html的变量
完整的目录结构如下(已删除__pycache__):
mysite/ ├── blog │ ├── admin.py │ ├── apps.py │ ├── __init__.py │ ├── migrations │ │ └── __init__.py │ ├── models.py │ ├── tests.py │ └── views.py ├── db.sqlite3 ├── manage.py ├── mysite │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └── wsgi.py └── templates └── cur_time.html
启动应用,访问页面
Dijango有一个优点,python编辑好之后,不用重启,就可以自动加载了
保存之后,就自动重启了
上一篇: django创建项目
下一篇: django表单提交
47744
46234
37109
34626
29228
25885
24744
19862
19415
17907
5715°
6314°
5834°
5887°
6983°
5829°
5845°
6360°
6315°
7672°