Django 框架入门篇(安装与创建项目)

摘要:
Django负责开箱即用的用户身份验证、内容管理、站点地图、RSS提要和许多其他任务。Django框架的设计模式借鉴了MVC框架的思想,并分为三个部分,以减少每个部分之间的耦合。Django框架的不同之处在于它分为三个部分:模型、模板和视图,即MTV框架。
什么是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),具有耦合性低、重用性高、生命周期成本低等优点。

image-20190923093344505.png

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

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


## Django的MTV模式

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

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

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

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


## Django框架图示

image-20190923093542277.png


# Django的下载与安装

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

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

image-20190923103443423.png


## 命令行安装

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

image-20190923104204713.png


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

image-20190923104610580.png


### 第三步:下载安装
![image-20190923110647438.png](https://img2018.cnblogs.com/blog/1568592/201909/1568592-20190923111608959-862152856.png)
### 注意事项
  • 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 出现如下界面则表示项目启动成功:

uploading-image-679928.png


## 创建 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项目

如下图:

uploading-image-797603.png

Pycharm下查看项目的结构

uploading-image-858362.png


## 使用Pycharm创建APP的两种方式
### 1、在 Terminal 中输入如下命令:
python manage.py startapp app02

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

uploading-image-260482.png


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

uploading-image-97354.png

uploading-image-301940.png

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

startapp app03


# 数据库迁移
python manage.py makemigrations
python manage.py migrate


# 创建超级用户

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

python manage.py createsuperuser


# 启动项目 在pycharm的主菜单栏中点击 Run --> Run ’项目名称‘,或者是在工具栏里面直接点击绿色的小三角启动项目(快捷键 shift+f10)。 ![uploading-image-958691.png](https://img2018.cnblogs.com/blog/1568592/201909/1568592-20190923191935711-1830992256.png)

uploading-image-104519.png

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

uploading-image-456771.png


## 访问django提供的后台管理系统 在浏览器中输入地址: 127.0.0.0:8000/admin/ 使用我们之前创建的超级用户账户和密码即可登录到后台。

uploading-image-991504.png

uploading-image-65100.png


# END

免责声明:文章转载自《Django 框架入门篇(安装与创建项目)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇讨论过后而引发对EF 6.x和EF Core查询缓存的思考R语言学习——实例标识符下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

linux的ftp安装及配置

一、安装ftp服务 1.检查是否已经安装 rpm -qa| grep vsftpd 2.没安装则安装 centos用: yum -y install vsftpd ubuntu用: apt-get install vsftpd 二、启动ftp服务 1.启动ftp服务: service vsftpd start 重启ftp service vsf...

AJAX技术框架及开发工具 转

常见的AJAX框架有: DWR - Web Remoting Buffalo - Web Remoting (based on prototype) prototype - JS OO library openrico - JS UI component (based on prototype) dojo - JS library and UI co...

七大国内外主流云计算开发平台

随着大众对云计算日益增长的需求,很多公司也建立了云计算开发平台,从多种角度、多形式的进行云技术的开发。这是开发者打造云战略的一个舞台,他们提供了云的部署及管理应用所需的基于云的开发和应用缩放或者是基础设施的管理,或是提供一个开源软件和硬件向结合的应用程序开发平台。 各种云平台(cloud platforms)的出现无疑是转变云计算技术的重要环节之一。顾名思...

http框架--Forest 的使用

引入jar包 <dependency> <groupId>com.dtflys.forest</groupId> <artifactId>spring-boot-starter-forest</artifactId> <version>1.3.0</version> <...

Mac 下VIM配置

Mac下VIM配置  首先,我们去这里下载MacVim,也可用这个网址:(http://code.google.com/p/macvim/),进入后的界面如下: _______________________________________________________________________ Download Download MacVim...

一些值得收藏的开源框架

阅读本文大概需要 7.2 分钟。 来源:segmentfault.com/a/1190000017346799 1. 分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。 此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring C...