【原创】第三章、Hello World

x
用微信扫描二维码
分享至好友和朋友圈

  

  回顾

  在上一章中,我们介绍了如何安装Django,然后通过命令行创建一个Django项目和Django应用,并对项目结构中的文件进行了初步的解释,可能大家还有很多迷糊的地方。不过没关系,我认为慢慢通过练习可以加深我们对这些结构和文件的理解。今天,我们就能通过一个小小的练习--动手创建Hello World视图,用到上一章中部分Django项目默认创建的文件,赶紧学起来吧。

  在我们进入本章动手练习之前,再熟悉熟悉Django的组成结构。

  Django的组成结构

  Django 是遵循MVC架构的Web开发框架,关于MVC框架的知识(大家可以自行了解,经常会被面试官提到),其主要由以下几个部分组成。

  管理工具(Management):一套内置的创建站点、迁移数据、维护静态文件的命令工具。

  模型(Models):提供数据访问接口和模块,包括数据字段、元数据、数据关系等的定义和操作。

  视图(Views):Django的视图层封装了HTTP Request和Response的一系列操作和数据流,其主要功能包括URL映射机制、绑定模板等。

  模板(Template):是一套Django自己的页面渲染模板语言,用若干内置的tags和filters定义页面的生成方式。

  表单(Form):通过内置的数据类型和控件生成HTML表单。

  管理站(Admin):通过声明需要管理的Model,快速生成后台数据管理网站。

  

引用菜鸟教程:MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。
Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。
View(视图) - 视图代表模型包含的数据的可视化。
Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离

  大致对Django的组成结构了解之后,再接下来的笔记中,我们将花费时间和练习逐个学习Django这些模块。

  Hello World 网站

  在上一章我们讲到Django项目和应用的创建后,现在让我们来写我们的第一个视图(views),也就是创建第一个简单的Hello World 网站,通过这个方法我们能够大致了解Django的路由映射功能。

  首先在mysite/myapp/views.py中建立一个路由相应函数:

  from django.shortcuts import render
from django.http import HttpResponse # 新增
# Create your views here.
def welcome(request):
return HttpResponse("

  Hello World!

  ")

  该代码定义了一个函数welcome,简单返回一条被HttpResponse()函数封装的Welcome信息。

  接下来,要通过URL映射将用户的HTTP访问与该函数绑定起来。在mysite/myapp/ 目录中新建一个urls.py文件,管理应用myapp中的所有URL映射:

  

  写入代码如下:

  from django.conf.urls import url
from . import views
urlpatterns = [
url(r'', views.welcome, name='first-url')
]

  第1行代码引入django.conf.urls中的url()函数,Django中的所有路由映射由该函数生成。第2行代码引入了mysite/myapp/views.py模块。第3行代码定义了关键变量urlpatterns,该变量是一个列表,保存所有由url()函数生成的路由映射,即,把所有路由映射到views.py的welcome函数中,并把该映射命名为first-url

  在项目URL文件mysite/urls.py的urlpatterns中增加一项,声明对应用中myapp中urls.py文件的引用,代码如下:

  from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include # 新增
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^myapp/', include('myapp.urls')), # 新增
]

  首先通过import语句引入django.conf.urls.include()函数,然后通过在urlpatterns列表中增加一个路径myapp/,将其转接到myapp.urls包,即mysite/myapp/urls.py文件。这样,就能通过include()函数就将两个urlpatterns连接了起来。

  这样之后,我们来看看会发生什么:

  python manage.py runserver

  然后用Chrome(或者其他Web浏览器),打开[http://127.0.0.1:8000/myapp]这个链接,我们可以看到如下效果:

  

  恭喜你!你刚刚完成了你的第一个Django视图--Hello World(毕竟这是每一个初学者必过的一关了吧。)

  总结

  通过第一章和第二章的学习,我们了解了Django的历史和特点,动手学习了如何安装Django,如何建立项目和应用,并以此开始了我们的第一个Django项目,创建了我们的初始应用程序。

  希望大家能够主动动手开始实践,毕竟学会多写一种Hello World程序也是一种极大的进步啊。

  接下来,我们将开始逐步学习模型,视图和URLs,一起探索更多关于Django的有趣知识。

  ———— e n d ————

特别声明:本文为网易自媒体平台“网易号”作者上传并发布,仅代表该作者观点。网易仅提供信息发布平台。

跟贴 跟贴 3 参与 3
© 1997-2019 网易公司版权所有 About NetEase | 公司简介 | 联系方法 | 招聘信息 | 客户服务 | 隐私政策 | 广告服务 | 网站地图 | 意见反馈 | 不良信息举报

java进阶架构师

关注java进阶架构师送架构

头像

java进阶架构师

关注java进阶架构师送架构

377

篇文章

6434

人关注

列表加载中...
请登录后再关注
x

用户登录

网易通行证/邮箱用户可以直接登录:
忘记密码