01.Django-基础
基础
1. 简介
Django是一个由Python写成的开放源代码的重量级Web应用框架。Django的目的是使常见的Web开发任务,快速和容易
2. 特点
MVC开发模式内置进行快速web开发所需的各种组件
利用
ORM(对象关系映射)机制来定义数据库,使开发人员可以构造出独立于具体数据库引擎的web应用内置后台管理web应用
内置web Server,开发人员无需安装任何web Server就可以进行各种web应用的开发和测试
具有灵活而强大的自定义
url系统内置多语种支持,可以方便的构建多国语言的web应用
3. MTV设计模式
- 数据模型 Model 负责与数据库交互
- 模板 Template 负责呈现内容到浏览器
- 视图 Views 负责接收请求、获取数据、返回结果
数据取出顺序 models->views->templates 数据层->逻辑视图层->前端模板层
4. 安装
pip install Django
git clone https://github.com/django/django.git
在pycharm中打开 file-->settings-->Project-->Project Interpreter
5. 基本目录
mysite #Django项目
|-- manage.py #项目管理器
|-- mysite #项目容器
|-- __init__.py #空文件
|-- settings.py #Django项目的配置文件
|-- urls.py #路由分发功能,urls中的路径与视图函数一一映射
|-- wsgi.py #Web Server Gatevay Interface Web服务器的网关接口
|-- app_name #应用
|-- migrations #数据移植(迁移)模块
|-- models.py #与数据库交互的文件
|-- views.py #存放视图函数
|-- admin.py #该应用后台管理系统配置
|-- apps.py #该应用的一些配置 1.9以后自动生成
|-- tests.py #自动化测试模块 在这里编写测试脚本
Django的基本命令
| 命令 | 解释 |
|---|---|
| python -m django --version | 查看Django版本 |
| django -admin startproject mysite | 创建一个mysite项目 |
| python manage.py startapp app01 | 创建应用程序 |
| python manage.py runserver [8000] | 启动程序 |
| python manage.py makemigrations | 进行创建模型变化迁移 |
| python manage.py migrate | 运行应用变化到数据库 |
| python manage.py syncdb | 同步到数据库 |
| python manage.py flush | 清空数据库{保留数据表} |
| python manage.py createsuperuser | 创建管理员用户 |
| python manage.py changepassword username | 修改用户密码 |
settings.py配置文件
# BASE_DIR 项目根目录路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
INSTALLED_APPS = [ # 程序定义文件
'django.contrib.admin',
''''''
]
ALLOWED_HOSTS = ["*"] # 白名单
MIDDLEWARE = [ # 中间件
'django.middleware.security.SecurityMiddleware',
''''''
]
TEMPLATES = [ # 模板路径
''''''
]
DATABASES = { # 数据库配置
''''''
}
LANGUAGE_CODE = 'zh-hans' # 语言
TIME_ZONE = 'Asia/Shanghai' # 时区
STATIC_URL = '/static/' # 静态文件
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
01.Django-基础的更多相关文章
- 01: Django基础篇
目录:Django其他篇 01:Django基础篇 02:Django进阶篇 03:Django数据库操作--->Model 04: Form 验证用户数据 & 生成html 05:Mo ...
- 01 Django基础知识
相关概念 软件框架 一个公司是由公司中的各部部门来组成的,每一个部门拥有特定的职能,部门与部门之间通过相互的配合来完成让公司运转起来. 一个软件框架是由其中各个软件模块组成的,每一个模块都有特定的功能 ...
- 01 Django基础
目录 一.什么是web框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对 ...
- 01.Django基础一之web框架的本质
一 web框架的本质及自定义web框架 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的浏览器就是一个socket客户端,基于请求做出响应,客户都先请求,服务端做出对应的响 ...
- Django基础(一)
Django基础(一) 知识预览 Django基本命令 二 路由配置系统(URLconf) 三 编写视图 四 Template 五 数据库与ORM admin的配置 一 什么是web框架? 框架,即f ...
- Python之路-(js正则表达式、前端页面的模板套用、Django基础)
js正则表达式 前端页面的模板套用 Django基础 js正则表达式: 1.定义正则表达式 /.../ 用于定义正则表达式 /.../g 表示全局匹配 /.../i 表示不区分大小写 /.../m ...
- Django 基础教程
Django 基础教程 这是第一篇 Django 简介 » Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站! 你一定可以学会,Django 很简单 ...
- python的django基础篇
一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...
- Python学习(二十六)—— Django基础一
转载自:http://www.cnblogs.com/liwenzhou/p/8258992.html 一.Web框架本质 我们可以这样理解:所有的Web应用本质上就是一个socket服务端,而用户的 ...
- python3之Django基础篇
一.Django基础 Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站! Django的特点: 强大的数据库功能:拥有强大的数据库操作接口(QueryS ...
随机推荐
- 关于RMQ问题的四种解法
什么是RMQ问题: RMQ (Range Minimum/Maximum Query):对于长度为n的数组A,回答若干询问RMQ(A,i,j)(i,j<=n-1),返回数组A中下标在i, ...
- postman(动态数据获取)
一:返回报文为 json 格式 示例:因为充值记录接口中需要用到登录接口返回报文中的信息如下 1.以获取token(JWT)和uid为例 2.在登录接口的tests中写入代码(因为登录接口报文信息中有 ...
- 一只简单的网络爬虫(基于linux C/C++)————配置文件设计及读取
一般来说linux下比较大型的程序都是以配置文件作为参数介质传递的,该爬虫也采用配置文件的方式来获取参数,配置文件格式大致如下: max_job_num=1 #seeds=https://www.ba ...
- Java——Spring整合Mybatis(IDEA版)
本文适用于初学者: 该文主要教大家如何整合spring和mybatis,整合完成效果,可以从数据库中查询出学生信息: 完整的工程目录如下: 整合思路: 需要spring来管理数据源信息. 需要spri ...
- [LiDAR数据模拟]系列(2) HELIOS的TLS点云模拟流程
关键词:地基激光雷达 点云模拟 XML文件 作者:李二 日期:07/05/2020 - 08/05/2020 我目前仅仅使用了TLS模式进行模拟,所以先讲一下TLS的模拟经验. ALS和MLS的模拟, ...
- jQuery中bind()与on()绑定事件的区别
.on()方法比.bind()方法多一个参数selector .on()的selector参数是筛选出调用.on()方法的dom元素的指定子元素,如: $("ul").on('cl ...
- MATLAB矩阵的表示
矩阵是matlab中最基本的数据对象. l 矩阵的建立 l 冒号表达式 l 结构矩阵和单元矩阵 1.矩阵的建立 (1)利用直接输入法建立矩阵:将矩阵的元素用中括号括起来,按矩阵行的顺序输入各元素 ...
- python学习之列表的定义以及增删改查
列表定义: >>> name['lily','lucy','tom'] >>> nums = [11,22,33,'100','lily'] #python中的列表 ...
- Flutter 标签类控件大全Chip
老孟导读:Flutter内置了多个标签类控件,但本质上它们都是同一个控件,只不过是属性参数不同而已,在学习的过程中可以将其放在放在一起学习,方便记忆. RawChip Material风格标签控件,此 ...
- 【Java基础总结】Java基础语法篇(上)
Java基础语法 思维导图 一.Java语言介绍 1.Java应用平台 JavaSE(Java Platform Standard Edition):开发普通桌面和商务应用程序,是另外两类的基础 Ja ...