赞
踩
你好,欢迎来到Django课堂!
注:本节内容来自百度百科
Django是一个开放源代码的Web应用框架,由Python写成。采用了MTV的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。2019年12月2日,Django 3. 0发布
Django是高水准的Python编程语言驱动的一个开源模型.视图,控制器风格的Web应用程序框架,它起源于开源社区。使用这种架构,程序员可以方便、快捷地创建高品质、易维护、数据库驱动的应用程序。这也正是OpenStack的Horizon组件采用这种架构进行设计的主要原因。另外,在Dj ango框架中,还包含许多功能强大的第三方插件,使得Django具有较强的可扩展性 。Django 项目源自一个在线新闻 Web 站点,于 2005 年以开源的形式被释放出来。Django 框架的核心组件有:
Django已经成为web开发者的首选框架,是一个遵循 MVC 设计模式的框架。MVC是Model、View、Controller三个单词的简写,分别代表模型、视图、控制器。Django其实也是一个MTV 的设计模式。MTV是Model、Template、View三个单词的简写,分别代表模型、模版、视图 。但是在Django中,控制器接受用户输入的部分由框架自行处理,所以 Django 里更关注的是模型(Model)、模板(Template)和视图(Views),称为 MTV模式。它们各自的职责如下:
层次 | 职责 |
---|---|
模型(Model),即数据存取层 | 处理与数据相关的所有事务: 如何存取、如何验证有效性、包含哪些行为以及数据之间的关系等。 |
模板(Template),即表现层 | 处理与表现相关的决定: 如何在页面或其他类型文档中进行显示。 |
视图(View),即业务逻辑层 | 存取模型及调取恰当模板的相关逻辑。模型与模板的桥梁。 |
从以上表述可以看出Django 视图不处理用户输入,而仅仅决定要展现哪些数据给用户,而Django 模板 仅仅决定如何展现Django视图指定的数据。或者说, Django将MVC中的视图进一步分解为 Django视图 和 Django模板两个部分,分别决定 “展现哪些数据” 和 “如何展现”,使得Django的模板可以根据需要随时替换,而不仅仅限制于内置的模板。
至于MVC控制器部分,由Django框架的URLconf来实现。URLconf机制是使用正则表达式匹配URL,然后调用合适的Python函数。URLconf对于URL的规则没有任何限制,你完全可以设计成任意的URL风格,不管是传统的,RESTful的,或者是另类的。框架把控制层给封装了,无非与数据交互这层都是数据库表的读,写,删除,更新的操作。在写程序的时候,只要调用相应的方法就行了,感觉很方便。程序员把控制层东西交给Django自动完成了。 只需要编写非常少的代码完成很多的事情。所以,它比MVC框架考虑的问题要深一步,因为我们程序员大都在写控制层的程序。这个工作交给了框架,仅需写很少的调用代码,大大提高了工作效率。
pip install Django -i https://pypi.tuna.tsinghua.edu.cn/simple
准备好了吗?走!
首先,打开终端:
输入:
cd 您要创建项目的目录
例如 cd D://
接下来使用django-admin
命令创建一个项目:
django-admin startproject 项目名
例如
django-admin startproject blog
如果没有任何提示,就说明创建成功了.打开D盘,就会看到刚刚创建的项目:
项目文件说明:
文件 | 说明 |
---|---|
manage.py | Django程序的执行入口 |
__init__ .py | 告诉Python这个是一个Python包 |
asgi.py | 作为项目运行在ASGI兼容的Web服务器上的入口 |
settings.py | Django配置文件 |
urls.py | Django默认路由配置文件 |
wsgi.py | Django实现WSGI接口的文件 |
运行manage.py
文件,我们发现:
输出了大堆奇怪的东西,怎么没有运行呢?我们要这样运行Django程序:
打开终端,打开项目目录,输入:
python manage.py runserver
可以看到已经在监听8000端口的请求了.打开浏览器输入网址: http://127.0.0.1:8000 就可以看到Django首页:
服务器运行时,我们按Ctrl
+ C
即可关闭服务:
在Django项目中,推荐使用应用完成不同模块的任务.一个项目中可以包含多个应用,而一个应用也可以在多个项目中使用.在Django中,每个应用都是一个包,并且遵循相同的约定
Django创建一个应用非常简单:
python manage.py startapp 应用名
例如:
python manage.py startapp article
接下来进入项目目录,就多了一个article目录,结构如下:
文件 | 说明 |
---|---|
__init__ .py | 告诉Python这个目录是一个Python包 |
migrations | 执行数据库迁移生成的脚本 |
admin.py | 配置Django管理后台的文件 |
apps.py | 单独配置每个APP的文件 |
medels.py | 创建数据模型的文件 |
tests.py | 编写测试脚本的文件 |
views.py | 用来编写视图控制器的文件 |
创建完应用后,它不会立即生效,需要在配置文件blog/settings.py
中激活应用:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'article.apps.ArticleConfig' # 新增代码,激活article应用
]
通常,INSTALLED_APPS默认包括了一下Django自带的应用:
应用名 | 说明 |
---|---|
django.contrib.admin | 管理员站点 |
django.contrib.auth | 认证授权系统 |
django.contrib.contenttypes | 内容类型框架 |
django.contrib.sessions | 会话框架 |
django.contrib.messages | 消息框架 |
django.contrib.staticfiles | 管理静态文件的框架 |
这些应用默认启用是为了给常规项目带来方便.
Django是基于Python的重量级Web框架,有非常丰富的功能,本文章介绍了Django创建项目及应用的方法.Django创建项目及应用只需一行命令,就可以生成基础目录结构,这样你就能专心写代码,而不是创建目录了.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。