@

Django官网下载


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框架图示




安装及配置

在命令行执行如下命令:

pip3 install django==1.11.11

创建一个Django项目

执行如下命令创建一个名为"mysite"的Django项目:

django-admin startproject mysite


目录介绍


运行Django项目

命令行执行:

python manage.py runserver 127.0.0.1:8080


启动Django报错

UnicodeEncodeError...

出现这种错误通常是因为计算机名为中文,将其改为中文并重启电脑便可以了.

SyntaxError: Generator expression must be parenthesized

保这个错误很大可能是因为使用了Python3.7.0.

目前(2018-06-12)Python3.7.0和Django还有点兼容性问题,换回Python3.6环境即可.


模版文件配置

TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')] # template文件夹位置
,
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]

静态文件配置

STATIC_URL = '/static/'  # HTML中使用的静态文件夹前缀
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'), # 静态文件存放位置
]

关系如图:

刚开始学习时可在配置文件中注释掉csrf中间件,方便表单提交测试:

MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware', # csrf中间件
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]


APP的创建

一个Django项目可以分为很多个APP,用来隔离不同功能模块的代码.

方式一:命令行创建:

python manage.py startapp app名称

注意当前所在路径,必须在项目的根目录下.

方式二:使用PyCharm创建:



点击:Tools --> Run manage.py Task...

然后在下方弹出的命令窗口中输入:startapp app名称

创建完毕了以后,还需要在settings.py文件中添加对应的APP.

如下:

# 本项目中的所有APP
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog.apps.BlogConfig', # 添加自己新建的app(可简写为'blog')
]

创建超级用户

注意:必须在迁移数据后,才可成功创建超级用户.

python manage.py createsuperuser

输入以上命令后,根据提示输入用户名、邮箱、密码、确认密码。密码的要求至少是不八位,不能和邮箱太接近,两次密码需要一致。



Djange基础必备三件套

from django.shortcuts import HttpResponse, render, redirect


HttpResponse

返回一个指定的字符串

内部传入一个字符串参数,它会帮我们做该做的工作(如:返回响应状态行),然后将传入的字符串返回给浏览器.

如下:

def index(request):
# 业务逻辑代码
return HttpResponse('OK')

render

返回一个HTML文件

除了要接收request参数外,还接收一个待渲染的模版文件和一个保存具体数据的字典参数.

将数据填充进模版文件,最后把结果返回给浏览器.

如下:

def index(request):
# 业务逻辑代码
return render(request, 'index.html', {'name': 'zyk', 'sex': 'boy'})

redirect

跳转到指定的网页

即重定向,接收一个URL参数,表示跳转到指定的URL..

如下:

def index(request):
# 业务逻辑代码
return redirect('/home/')

重定向是什么?





【Django】安装及配置的更多相关文章

  1. Ubuntu 16.04 Django安装和配置

    之前有安装和配置过,换了台电脑,再安装和配置,忽然发现差不多都忘记了,这里记录下已备之后查阅. sudo apt-get install python-pip sudo apt-get install ...

  2. centos 安装教程 服务器配置教程 服务器中安装python 服务器中安装Django 安装MySQL 配置MySQL

    一 .解决python编译安装所需的软件依赖 yum install gcc patch libffi-devel python-devel  zlib-devel bzip2-devel opens ...

  3. Django安装和配置环境变量

    一.windows系统安装Django 1.先安装python2.x or 3.x软件.(记得勾选pip3和添加python自己的环境变量) 下载地址:http://www.python.org/ 2 ...

  4. django安装以及配置

    一.django的安装和启动 1.安装 pip3 install django==1.11.22 目前来讲1.11.22版本比较稳定 2.django的创建 命令行:cmd先去到django创建目录, ...

  5. django 安装与配置-01

    安装命令 sudo pip install django python 可以引入django说明已经安装成功 查看django的版本 查看django管理命令 django-admin django创 ...

  6. windows环境下Django安装配置

    --python下载 https://www.python.org/downloads/ --pip 下载 https://pypi.python.org/pypi/pip --pip 安装及路径 解 ...

  7. Django学习(一) Django安装配置

    上一节介绍了如何搭建Python的开发环境,这次介绍一下如何搭建Django的开发环境. 第一.下载Django Django跟Python的版本对应 Django version Python ve ...

  8. django安装配置及测试

    django安装之前我们假设你已经安装了python,和mysql(不是必须的):(如果没有google一下挺简单不介绍了)下面直接介绍django的安装配置:到下面连接可以下载www.djangop ...

  9. Nginx+Python+uwsgi+Django的web开发环境安装及配置

    Nginx+Python+uwsgi+Django的web开发环境安装及配置 nginx安装 nginx的安装这里就略过了... python安装 通常系统已经自带了,这里也略过 uwsgi安装 官网 ...

  10. Python之道1-环境搭建与pycharm的配置django安装及MySQL数据库配置

    近期做那个python的开发,今天就来简单的写一下开发路线的安装及配置, 开发路线 Python3.6.1+Pycharm5.0.6+Django1.11+MySQL5.7.18 1-安装Python ...

随机推荐

  1. java用freemarker实现导出word----包含图片

    分为以下三个步骤: 1.先制作word模板 2.将该文档另存为 xml 文件 3.打开xml 文件 将对应的字段替换,比如 4.将xml文件保存成ftl格式的文档 5.相应的代码: package o ...

  2. 集团公司(嵌入ETL工具)財务报表系统解决方式

    集团公司(嵌入ETL工具)財务报表系统解决方式 一.项目背景: 某集团公司是一家拥有100多家子公司的大型集团公司,旗下子公司涉及各行各业,包含:金矿.铜矿.房产.化纤等.因为子公司在业务上的差异.子 ...

  3. A题之变态青蛙跳

    一仅仅青蛙一次能够跳上1级台阶,也能够跳上2级--它也能够跳上n级. 求该青蛙跳上一个n级的台阶总共同拥有多少种跳法. 分析: 这是一个斐波拉契数列的引申问题,先来看看斐波拉契数列: n<=1, ...

  4. ORA-06553:PLS-306:wrong number or types of arguments in call to &#39;&#39;

    1.错误描写叙述 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/ ...

  5. JavaWeb利用cookie记住账号

    JavaWeb利用cookie记住账号. 首先,来看看界面什么样子. 记住账号最普遍的做法,就是在点击登录时,将账号保存到cookie中. 材料准备 <script src="${ct ...

  6. DBCC-->Database Console Commands

    https://docs.microsoft.com/en-us/sql/t-sql/database-console-commands/database-console-commands DBCC ...

  7. php中命名空间和use

    php中命名空间和use 总结 php中的namespace就有点像java中package包的概念 php中的use的概念就是用别人的命名空间中的类 php中的include enquire是引入文 ...

  8. ubuntu14.04下snort的安装(官方文档安装)(图文详解)

    不多说,直接上干货! 最近为了科研,需要安装和使用Snort. snort的官网 https://www.snort.org/ Snort作为一款优秀的开源主机入侵检测系统,在windows和Linu ...

  9. 搭建Hadoop的全分布模式

    此教程仅供参考 注意:此文档目的是为了本人方便以后复习,不适合当教程,以免误导萌新... 1.安装三台Linux2.在每台机器上安装JDK3.配置每台机器的免密码登录 (*) 生成每台机器的公钥和私钥 ...

  10. HBase框架基础(五)

    * HBase框架基础(五) 本节主要介绍HBase中关于分区的一些知识. * HBase的RowKey设计 我们为什么要讨论rowKey的设计?或者说为什么很多工作岗位要求有rowKey的优化设计经 ...