20201216-第一讲-django初体验

1-Django

1.虚拟环境

为什么需要虚拟环境
所有的第三方包安装都是直接通过pip install xx的方式进行安装的,将第三方包安装到你的系统级的Python环境中。但Django 1.10不再兼容Django 0.9的一些语法了。那么不同版本的环境相互无法维护,需要通过虚拟环境来解决这个问题。
1.virtualenv
安装virtualenv

1 virtualenv是用来创建虚拟环境的软件工具,我们可以通过pip或者pip3来安装
2
3 pip installvirtualenv
4 pip3 install virtualenv

创建虚拟环境

1 virtualenv [虚拟环境的名字]
2
3 创建虚拟环境的时候指定Python解释器
4 virtualenv -p C:\Python36\python.exe [virutalenv name]

进入虚拟环境

1 虚拟环境创建好了以后,那么可以进入到这个虚拟环境中,然后安装一些第三方包,进入虚拟环境在不同的操作系统中有不同的方式,一般分为两种,
2 第一种是Windows
3 第二种是*nix:
4
5 windows进入虚拟环境:进入到虚拟环境的Scripts文件夹中,然后执行activate。
6
7 *nix进入虚拟环境:
8 cd virtualenv/bin
9 source activate
10
11 一旦你进入到了这个虚拟环境中,你安装包,卸载包都是在这个虚拟环境中,不会影响到外面的环境。

退出虚拟环境

1 退出虚拟环境很简单,通过一个命令就可以完成:deactivate。

2.virtualenvwrapper
virtualenvwrapper这个软件包可以让我们管理虚拟环境变得更加简单。不用再跑到某个目录下通过virtualenv来创建虚拟环境,并且激活的时候也要跑到具体的目录下去激活。
安装virtualenvwrapper

1 Linux:pip install virtualenvwrapper
2
3 编辑家目录下面的.bashrc文件,添加下面两行。
4 export WORKON_HOME=$HOME/.virtualenvs
5 export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
6 source /usr/local/bin/virtualenvwrapper.sh
7
8 使用source .bashrc使其生效一下。
9 Windows:pip install virtualenvwrapper-win

创建虚拟环境

1 mkvirtualenv [virutalenv name]
2 mkvirtualenv -p python3 [virutalenv name] # 指定Python版本

切换到某个虚拟环境

1 workon [virutalenv name]

退出当前虚拟环境

1 deactivate

列出所有虚拟环境

1 lsvirtualenv

删除某个虚拟环境

1 rmvirtualenv [virutalenv name]

创建虚拟环境的时候指定Python版本

1 mkvirtualenv --python==C:\Python36\python.exe [virutalenv name]

修改mkvirtualenv的默认路径

默认安装到电脑中C盘的当前登录用户的Envs目录下
在我的电脑->右键->属性->高级系统设置->环境变量->系统变量中添加一个参数WORKON_HOME,将这个参数的值设置为你需要的路径。

3.pipenv
Windows安装pipenv

1 pip install pipenv

Mac安装

1 brew install pipenv

Linux安装

1 pip install pipenv

pipfile和pipfile.lock
Pipfile文件
在这里插入图片描述

1 url # 指定国内pip源,不然下载库会很慢
2
3 dev-packages # 开发环境
4
5
6 packages #生产环境
7 django = “*” # *表示最新版本
8
9 requires # Python版本

pipfile.lock,详细记录环境依赖,并且利用了Hash算法保证了它完整对应关系
如果需要指定Python版本的话,前提是电脑中已经安装了python2和Python3

1 pipenv --three # 泛指Python3的版本
2 pipenv --two # 泛指Python2的版本
3 pipenv --python 3.7 # 指定Python版本

进入/退出/删除虚拟环境

1 pipenv shell # 进入虚拟环境
2 exit # 退出虚拟环境
3 pipenv --rm #删除整个环境 不会删除pipfile

管理开发环境

安装在开发环境下

1 pipenv install --dev itchat

在虚拟环境中运行命令,使用run参数

1 pipenv run python manage.py runserver

pipenv有个缺点,lock不稳定而且时间非常长,所以安装包的时候记得加上–skip-lock,最后开发完成要提价到仓库的时候在pipenv lock

1 pipenv install django --skip-lock

2.Django框架介绍与环境搭建

Django框架介绍

Django也遵循MVC思想,但是有自己的一个名词,叫做MVT
Django,发音为[`dʒæŋɡəʊ],Django诞生于2003年秋天,2005年发布正式版本,由Simon和Andrian开发。

Django版本和Python版本

https://docs.djangoproject.com/en/3.0/faq/install/#faq-python-version-support
在这里插入图片描述

Django开发原则
快速开发和DRY原则。Do not repeat yourself.不要自己去重复一些工作。
官网手册介绍

1 Django的官网:https://www.djangoproject.com/
2 Django Book2.0版本的中文文档:http://djangobook.py3k.cn/2.0/chapter01/

Django项目创建

1.用命令行的方式

1 创建项目:打开终端,使用命令:django-admin startproject [项目名称]
2 比如:django-admin startproject first_project。

2.用pycharm的方式
如果pycharm是专业版的话,可以用pycharm安装Django
在这里插入图片描述
运行Django项目
• 通过命令行的方式:python manage.py runserver。这样可以在本地访问你的网站,默认端口号是8000,这样就可以在浏览器中通过http://127.0.0.1:8000/来访问你的网站啦。如果想要修改端口号,那么在运行的时候可以指定端口号,python manage.py runserver 9000这样就可以通过9000端口来访问啦。
• 通过pycharm运行Django项目,在edit configurations中设置

项目结构介绍
manage.py:以后和项目交互基本上都是基于这个文件。一般都是在终端输入python manage.py [子命令]。可以输入python manage.py help看下能做什么事情。除非你知道你自己在做什么,一般情况下不应该编辑这个文件。

settings.py:本项目的设置项,以后所有和项目相关的配置都是放在这个里面。

urls.py:这个文件是用来配置URL路由的。比如访问http://127.0.0.1/news/是访问新闻列表页,这些东西就需要在这个文件中完成。

wsgi.py:项目与WSGI协议兼容的web服务器入口,部署的时候需要用到的,一般情况下也是不需要修改的。

project和app的关系

app是django项目的组成部分。一个app代表项目中的一个模块,所有URL请求的响应都是由app来处理。比如豆瓣,里面有图书,电影,音乐,同城等许许多多的模块,如果站在django的角度来看,图书,电影这些模块就是app,图书,电影这些app共同组成豆瓣这个项目。因此这里要有一个概念,django项目由许多app组成,一个app可以被用到其他项目,django也能拥有不同的app。
创建app

1 python manage.py startapp [app名称]

app中的文件

1 init.py 说明目录是一个Python模块
2 models.py 写和数据库相关的内容
3 views.py 接收请求,处理数据 与M和T进行交互
4 tests.py 写测试代码的文件(暂时不需要关心)
5 admin.py 网站后台管理相关的

应用注册

建立应用和项目之间的联系,需要对应用进行注册。
修改settings.py中的INSTALLED_APPS配置项。
Django初体验

1 from django.http import HttpResponse
2 from book.views import book
3 from move.views import move
4
5 def index(request):
6 return HttpResponse(“首页”)
7
8 def book(request):
9 return HttpResponse(“图书首页”)
10
11 def move(request):
12 return HttpResponse(“电影首页”)
13
14 urlpatterns = [
15 path(‘admin/’, admin.site.urls),
16 path(’’,index),
17 path(“book”,book),
18 path(“move”,move)
19 ]

DEBUG模式
• 开启了debug模式,那么修改代码,然后按下ctrl+s,那么Django会自动重启项目
• Django项目中代码出现了问题,在浏览器中和控制台中会打印错误信息
• 如果项目上线了,关闭debug模式,不然有很大的安全隐患
• 关闭DEBUG模式,在setting文件中,将DEBUG = False

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值