一个项目可以添加多个应用,可以使用以下两种方法来添加应用:

[root@localhost web]$ python manage.py startapp blog
[root@localhost web]$ django-admin.py startapp blog
[root@localhost web]$ ll blog
-rw-r--r--. 1 root root 63 Jan 26 08:47 admin.py # 应用的后台管理站点配置
-rw-r--r--. 1 root root 0 Jan 26 08:47 __init__.py # 表明这是一个包
-rw-r--r--. 1 root root 57 Jan 26 08:47 models.py # 模型,负责业务对象与数据库的映射
-rw-r--r--. 1 root root 60 Jan 26 08:47 tests.py # 用于开发测试,编写单元测试
-rw-r--r--. 1 root root 63 Jan 26 08:47 views.py # 视图,负责与用户的交互,定义url

在项目的配置文件中添加该应用:

[root@localhost web]$ vim web/settings.py
INSTALLED_APPS = (
......
'blog',
)

在项目的视图文件中添加应用的URL:

[root@localhost web]$ vim web/urls.py

urlpatterns = patterns('',
......
url(r'^blog/$', 'blog.views.index'), # 表明当我访问 http://192.168.216.128:8000/blog 时,会去访问blog应用目录下的views文件里的index函数
)
[root@localhost web]$ cat blog/views.py    # 在views文件中定义index函数
from django.shortcuts import render
from django.http import HttpResponse # Create your views here. def index(request): # request表示用户对页面的请求
return HttpResponse("<h1> Hello World </h1>") # HttpResponse()方法用于返回信息给用户请求

启动项目并访问应用:

[root@localhost web]$ python manage.py runserver 0.0.0.0:8000

如下,我们是直接把HTML写在视图文件中,但实际中我们会用一个目录来保存这些HTML文件

[root@localhost web]$ cat blog/views.py
from django.shortcuts import render
from django.http import HttpResponse def index(request):
return HttpResponse("<h1> Hello World </h1>")

首先创建一个模板目录,使用该目录来存放HTML文件,目录名固定是 templates:

[root@localhost web]$ mkdir blog/templates
[root@localhost web]$ cat blog/templates/index.html
<html> <head>
<title>我的第一个HTML页面</title>
</head> <body>
<h1> Hello World ! </h1>
<h1> Hello Django ! </h1>
</body> </html>

改写视图文件:

[root@localhost web]$ cat blog/views.py
from django.shortcuts import render
from django.http import HttpResponse
from django.template import loader, Context # loader()方法用来导入模板的HTML文件
# Context()方法用来解析模板的HTML文件
def index(request):
t = loader.get_template('index.html') # 加载HTML文件,创建一个模板对象
c = Context({}) # 解析上下文,因为HTML文件中没有定义变量,所以不需要解析
return HttpResponse(t.render(c)) # 最后返回渲染的模板

启动项目并访问应用:

[root@localhost web]$ python manage.py runserver 0.0.0.0:8000

最新文章

  1. [C#6] 0-概览
  2. CodeForces460B. Little Dima and Equation
  3. Node.js 常用工具 util
  4. 使用@ContextConfiguration注解后,提示找不到配置文件
  5. Java Ant build.xml详解
  6. IE6-IE11兼容性问题列表及解决办法
  7. HDU 4729 An Easy Problem for Elfness (主席树,树上第K大)
  8. ssh的public key的使用
  9. eclipse安装
  10. STextComboBox &amp; SComboBox
  11. CSS文字不换行,溢出省略
  12. EXCEL VLOOKUP函数怎么返回多列结果
  13. ASP.NET Core 2.0 : 八.图说管道
  14. ●BZOJ 4176 Lucas的数论
  15. 当placeholder的字体大小跟input大小不一致,placeholder垂直居中
  16. python之路--类与类之间的关系
  17. CentOS 7 DR模式LVS搭建
  18. ceph储存的S3接口实现(支持断点续传)
  19. 关于 Local feature 和 Global feature 的组合
  20. wcf远程服务器返回错误404

热门文章

  1. MySQL递归查询树状表的子节点、父节点
  2. android调用系统的自定义裁剪后得到的图片不清晰,使用MediaStore.EXTRA_OUTPUT获取缓存下的清晰图片
  3. Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决
  4. ThinkPHP使用memcache缓存服务器
  5. 【转】Graphics.DrawCurve的算法
  6. 【转载】Exchange 2010配置与安装实用手册
  7. (转)WAVE PCM 声音文件格式
  8. [ACM] POJ 1611 The Suspects (并查集,输出第i个人所在集合的总人数)
  9. C# 中使用正则表达式验证电话号码、手机号、身份证号
  10. php 字符串 以 开头 以结尾 startWith endWith