什么是Django框架?

官方定义:Django是一个高级Python Web框架,鼓励快速开发和简洁实用的设计。它由经验丰富的开发人员构建,可以解决大部分Web开发的麻烦,因此您可以专注于编写应用程序而无需重复造轮子。

Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source.

快速高效:Django旨在帮助开发人员尽快将应用程序从概念转变为完成。

Django was designed to help developers take applications from concept to completion as quickly as possible.

完全读取:Django包含许多其他功能,可用于处理常见的Web开发任务。Django负责开箱即用的用户身份验证,内容管理,站点地图,RSS feed和许多其他任务。

Django includes dozens of extras you can use to handle common Web development tasks. Django takes care of user authentication, content administration, site maps, RSS feeds, and many more tasks — right out of the box.

安全可靠:Django认真对待安全性,并帮助开发人员避免许多常见的安全性错误,例如SQL注入,跨站点脚本编写,跨站点请求伪造和点击劫持。其用户身份验证系统提供了一种安全的方式来管理用户帐户和密码。

Django takes security seriously and helps developers avoid many common security mistakes, such as SQL injection, cross-site scripting, cross-site request forgery and clickjacking. Its user authentication system provides a secure way to manage user accounts and passwords.

可扩展性:地球上一些最繁忙的站点使用Django的功能来快速灵活地扩展以满足最繁重的流量需求。

Some of the busiest sites on the planet use Django’s ability to quickly and flexibly scale to meet the heaviest traffic demands.

用途广泛:公司,组织和政府已使用Django构建各种东西-从内容管理系统到社交网络再到科学计算平台。

Companies, organizations and governments have used Django to build all sorts of things — from content management systems to social networks to scientific computing platforms.

MVC框架和MTV框架

MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller),具有耦合性低、重用性高、生命周期成本低等优点。

Django框架的设计模式借鉴了MVC框架的思想,也是分成三部分,来降低各个部分之间的耦合性。

Django框架的不同之处在于它拆分的三部分为:Model(模型)、Template(模板)和View(视图),也就是MTV框架。

Django的MTV模式

Model(模型):负责业务对象与数据库的对象(ORM)

Template(模版):负责如何把页面展示给用户

View(视图):负责业务逻辑,并在适当的时候调用Model和Template

此外,Django还有一个urls分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template

Django框架图示

Django的下载与安装

官方下载链接:https://www.djangoproject.com/download/

Django发行版本以及支持时间表

命令行安装

Django安装命令:pip3 install django==1.11.21 -i https://pypi.tuna.tsinghua.edu.cn/simple

注意:

  • 使用命令行方式安装Django需要提前安装好pip包管理工具。(pip安装方法略...)
  • 如果需要安装指定版本可以通过 ==版本号指定安装的版本,默认安装最新版。
  • 指定下载源 -i 源地址

使用pycharm安装(Mac环境下)

安装步骤 —> Pycharm —> Preferences —> Project:项目名称 —> Project Interpreter

第一步:Pycharm —> Preferences

第二步:Project:项目名称 —> Project Interpreter

第三步:下载安装

注意事项

  • Specify version:选择版本
  • 不要勾选 Install to user‘s site packages directory (....)
  • 如果无法使用官方源地址下载可以通过 MANAGE REPOSITORIES添加指定的源地址。

Django 的基本命令

创建 Django 项目

  1. 使用mkdir命令创建一个djangoproject目录用于存放我们的 Django项目。

  2. 使用cd命令进入刚创建的djangoproject目录中。

==== 接下来画重点啦 ====

  1. 使用django-admin startproject mysite命令创建一个名为 mysite 的Django项目。

  2. 查看Django的目录结构

.
└── mysite├── manage.py  # 管理文件└── mysite  # 项目根目录├── __init__.py├── settings.py  # 配置文件├── urls.py  # 路由 -- > URL路径和函数的对应关系└── wsgi.py  # runserver命令就使用wsgiref模块做简单的 web server
  • 到这里我的第一个Django项目就算创建完成啦...

启动 Django 项目

在终端中切换到mysite目录下,执行如下命令:

python manage.py runserver  # 默认端口 8000

启动命令可指定参数:

python manage.py runserver 8888  # 指定端口为 8888
python manage.py runserver 127.0.0.1:9999  # 指定 IP 和端口 ,使用冒号分隔

在浏览器输入 127.0.0.0:8000 出现如下界面则表示项目启动成功:

创建 APP

通常情况下一个Django项目中会存在多个APP,用来隔离不同功能模块的代码。

创建App命令如下:

python manage.py startapp app01  # 创建一个名为app01的APP。

执行命令后,在项目目录下会多出一个app01的文件夹,目录结构如下:

.
├── app01
│   ├── __init__.py
│   ├── admin.py  # Django 提供的管理后台
│   ├── apps.py  # 配置当前APP
│   ├── migrations  # 数据库操作记录
│   │   └── __init__.py
│   ├── models.py  # ORM相关操作
│   ├── tests.py  # 单元测试
│   └── views.py  # 业务代码
├── db.sqlite3
├── manage.py

使用Pycharm创建Django项目

如下图:

Pycharm下查看项目的结构

使用Pycharm创建APP的两种方式

1、在 Terminal 中输入如下命令:

python manage.py startapp app02

此时我们可以看到app02已经创建成功

2、在主菜单栏中选择Tools,在下拉菜单中选择Run manage.py task,会出现如下图所示的工具对话框:

在弹出的命令窗口中输入如下命令即可创建APP:

startapp app03

数据库迁移

python manage.py makemigrations
python manage.py migrate

创建超级用户

输入以下命令,根据提示输入用户名、邮箱、密码、确认密码。
注意:密码不能小于8位且不能使用纯数字。(基于django1.11.22,其它版本未做测试)

python manage.py createsuperuser

启动项目

在pycharm的主菜单栏中点击 Run --> Run ’项目名称‘,或者是在工具栏里面直接点击绿色的小三角启动项目(快捷键 shift+f10)。

当出现如下信息时表示项目已成功启动,这是就可以通过浏览器访问到我们的项目中。

访问django提供的后台管理系统

在浏览器中输入地址: 127.0.0.0:8000/admin/ 使用我们之前创建的超级用户账户和密码即可登录到后台。

END

转载于:https://www.cnblogs.com/xsh168/p/11537465.html

Django 框架入门篇(安装与创建项目)相关推荐

  1. Django在Win7下安装与创建项目hello word示例

    Django在Win7下的安装及创建项目hello word的例子 有关python 的django 框架安装与开发的小例子. Django在Win7下的安装及创建项目hello word. 1.安装 ...

  2. [Python] Django框架入门

    说明:Django框架入门 当前项目环境:python3.5.django-1.11 项目名:test1 应用名:booktest 命令可简写为:python manager.py xxx => ...

  3. Git高速入门——Git安装、创建版本号库以及经常使用命令

    Git高速入门--Git安装.创建版本号库以及经常使用命令 学习Git最全面的资料,在我看来是这本书-- Pro Git,网上关于Git的教程有非常多,包含当中一些非常优秀的教程.这一系列的博客,主要 ...

  4. 博客基础_django_python从入门到实践_创建项目_创建应用

    创建项目 制定规范 创建一简单博客网页,有固定分类,每个分类下又可以添加具体博客条目,每个条目保留作者,发布时间. 创建虚拟环境 虚拟环境是系统的一个位置,可以在其中安装包,与其他python包隔离. ...

  5. Python Django框架入门第一课

    Python Django框架入门 1.Django简介 Django使用python开发的一个免费的Web框架,几乎囊括了Web应用的方方面面,用于快速搭建高性能.优雅的网站. 2.配Django运 ...

  6. layui框架入门篇

    layui框架入门篇(一)--引入 layui(谐音:类 UI) 是一套开源的 Web UI 解决方案,采用自身经典的模块化规范,并遵循原生 HTML/CSS/JS 的开发方式,极易上手,拿来即用.其 ...

  7. Django 框架篇: 一. Django介绍; 二. 安装; 三. 创建项目;

    Django介绍 一. web框架:   框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来 ...

  8. Django框架(入门超细笔记 创建项目步骤 )

            在安装Django之前,我们首先需要安装Python开发的虚拟环境 virtualenv. 一.学习django我们要先下载虚拟环境 1.在cmd中输入命令:pip install v ...

  9. 从零开始的Django框架入门到实战教程(内含实战实例) - 01 创建项目与app、加入静态文件、模板语法介绍(学习笔记)

    目录 1. 安装Django 2. 创建项目(startproject) 2.1 创建项目 2.2 介绍项目文件 2.3 APP(startapp) 3. 走通流程(urls, views, runs ...

最新文章

  1. 设置float后,后面的元素位置问题。
  2. 关于Unity中的UGUI优化,你可能遇到这些问题
  3. WebRTC / Jitsi / 使用 jitsi 官方源安装内网演示环境过程
  4. 得到qq正在登录的qq号
  5. java 兔子生仔问题
  6. 走近互联网先驱者——Henning Schulzrinne
  7. U大师U盘装系统——原版XP系统安装(V1.2.0版)
  8. keil spi 调试_单片机软件出问题了?有经验的工程师这么调试
  9. SCSI代码分析(0)SCSI层框架
  10. C++天天练——两点间的距离
  11. PowerVR SDK 2020 Release 2发布:多处更新优化,性能更强大
  12. hotmail手机端_hotmail邮箱手机版
  13. android市场低迷,销量低迷 安卓厂商mini产品或面临策略调整
  14. 【Datawhale组队学习】机器学习数学基础 - 一元函数微分学的几何应用【Task 04】
  15. 论文阅读:A Neural Probabilistic Language Model 一种神经概率语言模型
  16. Docker容器获取局域网ip(使用macvlan)
  17. IPHONE手机知识大全(上)
  18. 计算机图形学3——Boundary-Fill Algorithm
  19. PLC++控制程序精编108例pdf
  20. yahoo邮箱配置Foxmail

热门文章

  1. Laravel 任务调度(Console)
  2. logging日志配置,day95下午
  3. BZOJ1196: [HNOI2006]公路修建问题
  4. P1288 取数游戏II
  5. 利用partition分组查询 查询每个分组第一条数据
  6. 《代码阅读方法与实践》阅读笔记一
  7. 随着通信和编程,它是一门艺术系列3(沟通的目的)
  8. lol服务器维护9月30,英雄联盟4月30日更新维护几点结束_4月30日LOL10.9版本停机维护结束时间_3DM网游...
  9. php 输出rtf,有没有办法在PHP中访问压缩RTF和输出RTF代码
  10. acwing算法题--完全背包问题