Django入门

Django入门项目创建、配置

1. Django安装与使用

1.1 安装虚拟环境

1.命令安装 pip install virtuanenv

(1)创建虚拟环境:virtualenv -p python e:/...

(2)找到安装的虚拟环境下 (我自己的)E:\virtualenv\webenv\Scripts

(3)进入虚拟环境命令:activate

(4)退出环境命令:deactivate

1.2 Django安装

1. pip install django==1.11

2. 查看版本:django-admin --version

3. 在项目文件下创建django :django-admin startproject 项目名称

3. 启动项目:python manage.py runserver

1.3 Django的使用与配置

  1. 创建项目文件。

  2. 在项目文件下创建django :django-admin startproject 项目名称

  3. 在项目名称目录下创建子模块:django-admin startapp 子模块名称

  4. 在根目录下的setting文件中,更改编码以及添加子模块注册表:

LANGUAGE_CODE = 'zh-Hans'
INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    '子模块名称',
]

  1. 在子模块中创建路由文件(建议名称为 urls.py

在urls.py文件中导入:

from django.conf.urls import url
from . import views
urlpatterns = [
    url(r'^index/$', views.index, name='index'),
    url(r'^login/$', views.login, name='login'),
    url(r'^register/$', views.register, name='register'),
]

备注:from django.conf.urls import url

URL配置(URLconf)就像Django 所支撑网站的目录。它的本质是URL与要为该URL调用的视图函数之间的映射表。
你就是以这种方式告诉Django,对于这个URL调用这段代码,对于那个URL调用那段代码。

官方介绍

https://docs.djangoproject.com/en/1.11/topics/http/urls/

  1. 在子模块中的views.py文件中导入:
from django.http import HttpResponse

创建各个视图方法

  1. 在根目录文件夹下的urls.py中配置二级路由
from django.conf.urls import url, include
from django.contrib import admin
urlpatterns = [
    url(r'^admin/', admin.site.urls),
    url(r'^', include("blog.urls")),
    #在一级路由中配置了二级路由
    url(r'^blog/', include("blog.urls")),
]

  1. 在Django项目目录下,输入命令:python manage.py runserver

启动服务

1.4 Django文件介绍

mysite项目名称

mysite #根模块
init.py #包的描述文件
settings.py #项目的配置文件
urls.py #路由匹配文件
wsgi.py #django实现wsgi web网关接口文件,不能动

自定义name #子模块

migrations #同步数据的迁移文件的文件夹
init.py #模块描述文件
admin.py #后台管理系统用来管理子模块中的模型类的文件
views.py #子模块的视图文件
urls.py #子模块的路由文件,自己创建
models.py #定义模型类
tests.py #测试文件
apps.py #定义子模块项目项的文件

manage.py #项目的管理文件

2. Web软件的架构

2.1 MVC处理流程

在传统的web软件中,大多使用MVC的处理流程。

名称 描述
M(model) 模型 类、以及跟数据库相关的代码
V(view) 视图 页面
C(controller)控制器 接受参数,分发请求

目的:

解耦和,利于代码的键壮性、扩展性、维护性

分层管理:

可以使代码高内聚、低耦合

l 耦合性:也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差。模块间耦合高低取决于模块间接口的复杂性、调用的方式及传递的信息

l 内聚性:又称块内联系。指模块的功能强度的度量,即一个模块内部各个元素彼此结合的紧密程度的度量。若一个模块内各元素(语名之间、程序段之间)联系的越紧密,则它的内聚性就越高。

2.2 Django的MVT处理流程

名称 描述
m表示model 负责与数据库交互
v 表示view 负责接收请求、获取数据、返回结果
t 表示template 负责呈现内容到浏览器

你可能感兴趣的:(Django入门)