既可以简单的 django.http.HttpResponse 来把内容显示到网页上,也可以使用渲染模板的方法来显示内容。
说明:代码是基于 Django 1.8,但 Django 1.4 - Djagno 1.11 操作流程也是一样的。
1. 创建一个 sundyblog 项目,和一个 名称为 blog 的应用,并且
django-admin.py startproject sundyblog
cd sundyblog
python manage.py startapp blog
2. 把 blog 加入到 settings.INSTALLED_APPS中
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog', ##添加部分
)
3. 打开 blog/views.py 写一个首页的视图
from django.shortcuts import render
def home(request):
return render(request, 'home.html')
4. 在 blog目录下新建一个 templates 文件夹,里面新建一个 home.html
默认配置下,Django 的模板系统会自动找到app下面的templates文件夹中的模板文件。
目录的结构是这样的:
sundyblog
├── blog
│ ├── __init__.py
│ ├── admin.py # 用来将你的app注册到Django的管理站点,只有注册过的app才能在Django管理后台进行设置与管理。
│ ├── migrations # 这个目录包含app数据库的迁移记录。migrations允许Django来跟踪你的模型的变化和相应的数据库同步。
│ │ └── __init__.py
│ ├── models.py # app数据模型。所有的Django应用程序都需要有一个models.py文件,但这个文件可以是空的。
│ ├── templates
│ │ └── home.html
│ ├── tests.py # 可以将测试添加到该文件。
│ └── views.py # 视图文件用来设置模型的逻辑。每个视图接收一个HTTP请求,并返回相应的响应。
├── manage.py
└── sundyblog
├── __init__.py # 空的Python文件,用来告诉Python将这个项目目录视为一个Python模块。
├── settings.py # 项目的配置和设置文件,用命令行生成的Django项目会自动生成默认配置。
├── urls.py # URL配置文件,每一行URL都对应一个相应的视图(view)
└── wsgi.py # 配置您的项目,让它作为一个WSGI程序运行。
5. 在 home.html 中写一些内容
<!DOCTYPE html>
<html>
<head>
<title>Come on</title>
</head>
<body>
You can fly
</body>
</html>
6. 将视图函数对应到网址,更改 sundyblog/urls.py
from django.conf.urls import include, url
from django.contrib import admin
urlpatterns = [
url(r'^blog/$', 'blog.views.home'),
url(r'^admin/', include(admin.site.urls)),
]
7. [可选] 创建数据库表
python manage.py syncdb
# Django 1.7.x 以及上要用
python manage.py migrate
创建数据库虽然本节不会用到,但是可以让一些提示消失(提示你要创建数据库之类的)
8. 运行开发服务器,看看效果
python manage.py runserver