Django学习笔记(一)

一、开发环境的搭建

1、python环境的安装


1
2
3
C:\Users\haoming>python -V

Python 3.6.2

到python.org官方网站下载安装,这里安装的是pytho3.6.2的64位版本

2、virtualenv的安装


1
2
3
4
5
6
7
8
9
10
11
C:\Users\haoming>pip install virtualenv

Collecting virtualenv

Downloading virtualenv-15.1.0-py2.py3-none-any.whl (1.8MB)

100% |████████████████████████████████| 1.8MB 159kB/s

Installing collected packages: virtualenv

Successfully installed virtualenv-15.1.0

  • virtualenv

Virtualenv是一个Python工具,使用它可以创建一个独立的Python环境。

  • virtualenv环境的创建

创建方法


1
virtualenv  文件名

1
2
3
4
5
6
7
E:\>virtualenv env\blogproject_env

Using base prefix 'c:\\users\\haoming\\appdata\\local\\programs\\python\\python36'

New python executable in E:\env\blogproject_env\Scripts\python.exe

Installing setuptools, pip, wheel...done.

  • virtualenv环境的激活

执行E:\env>blogproject_env\Scripts\activate文件
E:\env>blogproject_env\Scripts\ 目录中的activate文件位激活文件


1
2
3
E:\env>blogproject_env\Scripts\activate

(blogproject_env) E:\env>

激活后的控制台,命令行前面带有新建的环境名称

Linux 下的激活有所不同


1
$ source blogproject_env/bin/activate

3、Django的安装

在新建的环境之下安装django


1
pip install django<==版本号>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
(blogproject_env) E:\>pip install django

Collecting django

Downloading Django-1.11.3-py2.py3-none-any.whl (6.9MB)

100% |████████████████████████████████| 7.0MB 80kB/s

Collecting pytz (from django)

Downloading pytz-2017.2-py2.py3-none-any.whl (484kB)

100% |████████████████████████████████| 491kB 138kB/s

Installing collected packages: pytz, django

Successfully installed django-1.11.3 pytz-2017.2

测试是否安装成功


1
2
3
4
5
6
7
8
9
10
11
12
13
(blogproject_env) E:\>python

Python 3.6.2 (v3.6.2:5fd33b5, Jul 8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)] on win32

Type "help", "copyright", "credits" or "license" for more information.

>>> import django

>>> print(django.get_version())

1.11.3

>>>

4、Django工程的建立

  1. 创建工程目录

新建一个文件夹用于存放工程
控制台创建方法为


1
mkdir 文件夹名称

  1. 创建工程

命令


1
django-admin startproject blogproject

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
(blogproject_env) E:\Workspace>django-admin startproject blogproject

(blogproject_env) E:\Workspace>tree

卷 新加卷 的文件夹 PATH 列表

卷序列号为 000000CC BC0E:BF63

E:.

└─blogproject

└─blogproject

(blogproject_env) E:\Workspace>

  1. 工程目录结构
blogproject\

1
2
3
4
5
6
7
8
9
10
11
manage.py

blogproject\

__init__.py

settings.py

urls.py

wsgi.py
  • 项目目录:blogproject
  • manage.py脚本:用于管理Django站点

在项目目录blogproject里包含:

  • settings.py: 包含项目的所有配置参数
  • urls.py: URL根配置
  • wsgi.py: 内置runserver命令的WSGI应用配置
  • init*.py: 用来告诉python,当前目录是python模块

5、启动web服务

执行工程目录下的manage.py文件,参数是runserver

命令


1
python manage.py runserver

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
(blogproject_env) E:\Workspace\blogproject>python manage.py runserver

Performing system checks...

System check identified no issues (0 silenced).

You have 13 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.

Run &apos;python manage.py migrate&apos; to apply them.

July 30, 2017 - 18:21:32

Django version 1.11.3, using settings &apos;blogproject.settings&apos;

Starting development server at http://127.0.0.1:8000/

Quit the server with CTRL-BREAK.

http://127.0.0.1:8000/是默认的端口链接,在执行manage.py文件是可以添加端口的参数

web服务已经开启

修改设置

web服务已经开启,但是默认的是英文。
修改settin.py文件

默认的初始化设置


1
2
3
4
5
6
7
# Internationalization

# https://docs.djangoproject.com/en/1.11/topics/i18n/

LANGUAGE_CODE = &apos;en-us&apos;

TIME_ZONE = &apos;UTC&apos;

修改为


1
2
3
4
5
6
7
# Internationalization

# https://docs.djangoproject.com/en/1.11/topics/i18n/

LANGUAGE_CODE = &apos;zh-hans&apos;

TIME_ZONE = &apos;Asia/Shanghai&apos;

保存关闭.

总结

  1. virtualenv
安装 pip install virtualenv

创建 virtualenv {环境名}

激活 E:\env>blogproject_env\Scripts\activate

(blogproject_env) E:\env>

退出 deactivate  
  1. Django的安装
pip install django  
  1. App的生成与启动
django-admin.py  startproject  {project_name}

 cd {project_name}

 [manage.py startapp {app名} ]  
  1. 启动服务器
manage.py runserver [[ IP:] 端口 ]  
  1. 用浏览器打开URL
http://localhost:端口/[函数名]  
-------------本文结束感谢您的阅读-------------