Django安装及创建工程
Django MTV模型介绍
Django的MTV分别代表:
Model(模型):负责业务对象与数据库的对象(ORM)
Template(模版):负责如何把页面展示给用户
View(视图):负责业务逻辑,并在适当的时候调用Model和Template
此外,Django还有一个urls分发器,它的作用是将一个个URL的页面请求分发给不同的view处理,view再调用相应的Model和Template
Django基本命令
下载安装Django,到python安装目录下面的Scripts目录
C:\>cd C:\Users\lenovo\AppData\Local\Programs\Python\Python36\Scripts
C:\Users\lenovo\AppData\Local\Programs\Python\Python36\Scripts>pip3 install django
添加环境变量
创建一个新的Django项目
D:\>django-admin startproject mysite
当前目录下会生成mysite的工程,目录结构如下
mysite:这个才是工程的包名。
__init__.py:表明mysite是一个包。
manage.py : Django项目里面的工具,通过它可以调用django shell和数据库等,在manage.py的同级目录使用python manage.py 可以看到可以使用的命令列表。
settings.py :Django的配置文件,包含了项目的默认设置,包括数据库信息,调试标志以及其他一些工作的变量。
urls.py :负责把URL模式映射到应用程序。
wsgi.py:WSGI是web server gateway interface,这个文件是使project符合这种协议的入口点(entry-point)
启动django项目
在manage.py的同级目录下运行这个命令就可以看到以下内容
D:\mysite>python3 manage.py runserver
Performing system checks... System check identified no issues ( silenced).
......
Starting development server at http://127.0.0.1:8080/
Quit the server with CTRL-BREAK.
这样我们的django就启动起来了!当我们访问:http://127.0.0.1:8080/时就可以看到
Django自带了一个开发服务器,便于开发使用(Django官方强调不能用作生产环境),默认端口号是8000,如果想运行在别的端口号,以下面的方式运行即可,比如:9000
python manage.py runserver 9000
# 在局域网内其他电脑上访问你的站点
python manage.py runserver 0.0.0.0:9000
按Ctrl C停止服务器
新建app
一个project可以又多个app,一个app可以同时属于多个project。通过以下命令创建一个app(在project目录下)
D:\mysite\>django-admin startapp blog
创建app后的目录结构,因为Django会自动创建一系列文件,我们需要明白每个为文件的作用
blog:app的根目录
admin.py:Django自带了一个管理界面,这个文件可以注册model在界面中管理
__init__.py:表明polls也是一个包
migrations:用来初始化数据库,在执行python manage.py makemigrations 的时候会自动生成一个文件在这里
__init__.py:表明migrations也是一个包
models.py:在这个文件里面定义model类
tests.py:写测试代码
views.py:视图,Django映射urls.py里面的url的时候,在views.py里面查找对应的处理方法
在PyCham下面创建工程及app方法 如下
创建完目录结构如下
实现简单的login登陆功能
在urls.py里面添加url login和valide
写一个简单的login.html测试页面
在views.py里面添加登陆和验证的函数方法,方法名称要和urls.py里面对应
重启服务
输入正确的用户名密码登陆测试
返回验证成功
输入错误的用户名密码登陆测试
如果是post请求,访问会出现403错误,可以把setting里面的csrf选项关闭,csrf要求身份验证,防止跨站攻击。
这里就用Django实现了简单的web登陆验证功能,在真正使用的时候用户身份验证要结合数据库。
Django安装及创建工程的更多相关文章
- Django 安装、创建第一个项目
一.版本 Django 版本对应的 Python 版本: Django 版本 Python 版本 1.8 2.7, 3.2 , 3.3, 3.4, 3.5 1.9, 1.10 2.7, 3.4, ...
- Django 使用Pycharm 创建工程
一.Pycharm 创建Django 工程 事实上,我们一般不使用命令行,而是直接在Pycharm 中创建Django 项目. Pycharm 是进行Django 开发的最佳 IDE,请大家自行安装, ...
- Django 使用cmd 创建工程
一.Django 安装 1 通过pip安装 Django 如果你是通过升级的方式安装Django,那么你需要先卸载旧的版本. Django 提供3种发行版本,推荐使用官方的稳定版本: 你的操作系统提供 ...
- Django 使用VScode 创建工程
一.VSCode 创建Django 工程 VSCode 官方: https://code.visualstudio.com 1 mysite(项目名),创建Django 项目,可以和虚拟环境放在同一目 ...
- Django安装与创建项目
下载 https://media.djangoproject.com/releases/1.11/Django-1.11.20.tar.gz 解压 tar -zvxf Django-1.11.20.t ...
- python 自动化之路 day 18 前端内容回顾、补充/Django安装、创建
前端回顾: 整体: - HTML - CSS - JavaScript - 基本数据类型 - for,while.. - DOM - obj = document.getElementById('.. ...
- CCS V5 使用教程一: 安装激活与创建工程
CCS下载与安装 下载地址 Liscense下载地址 安装教程 创建工程 工程创建教程
- frist Django app — 一、 创建工程
缘起 既然python都学了,学习python的时候感觉是相见恨晚,一种新的编程语言带给我一种新的思考问题的方式,为了巩固学过的东西并进一步学习python,就想学学Django,看看会不会带给我关于 ...
- Django在Win7下安装与创建项目hello word示例
Django在Win7下的安装及创建项目hello word的例子 有关python 的django 框架安装与开发的小例子.Django在Win7下的安装及创建项目hello word.1.安装:命 ...
随机推荐
- Educational Codeforces Round 25 E. Minimal Labels&&hdu1258
这两道题都需要用到拓扑排序,所以先介绍一下什么叫做拓扑排序. 这里说一下我是怎么理解的,拓扑排序实在DAG中进行的,根据图中的有向边的方向决定大小关系,具体可以下面的题目中理解其含义 Educatio ...
- 使用MFC做D3D的框架
转载请注明出处http://www.cnblogs.com/CAION/p/3192111.html (程序运行时是和其他程序挺像 = =,但我保证这是原创的) 1.将D3D的初始化,渲染等等一些行为 ...
- java中的 final 关键字 修饰引用时的问题
final使得被修饰的变量”不变”,但是由于对象型变量的本质是“引用”,使得“不变”也有了两种含义:引用本身的不变,和引用指向的对象不变. 引用本身的不变: final StringBuffer a= ...
- 5.2 - ToDoList
一.ToDoList需求 参考链接http://www.todolist.cn/ 1.将用户输入添加至待办项 2.可以对todolist进行分类(待办项和已完成组),用户勾选既将待办项分入已完成组 3 ...
- MapReduce的核心编程思想
1.MapReduce的核心编程思想 2.yarn集群工作机制 3.maptask并行度与决定机制 4.maptask工作机制 5.MapReduce整体流程 6.shuffle机制 7.yarn架构
- RE合同记账会计凭证
*&---------------------------------------------------------------------* *& Title : 不动产转租合同自 ...
- Loadrunner中参数化取值方式分析
Loadrunner中参数化取值依赖两个维度: 1.取值顺序分为“顺序”“随机”“唯一”. select next row:Sequential , Random,unique 2.更新值时分为 ...
- 模块讲解----json模块(跨平台的序列化与反序列化)
一.json的特点 1.只能处理简单的可序列化的对象:(字典,列表,元祖) 2.json支持不同语言之间的数据交互:(python - go,python - java) 二.使用场景 1.玩 ...
- Yarn架构
jobtracker存在单点故障问题 jobtracker只支持mapreduce,计算框架不具有可扩展性 jobtracker是性能瓶颈 yarn可以整合不同的计算框架,提高资源利用率 yarn的基 ...
- undefined reference to _imp__xmlFree
Re: [xml] MSYS and MINGW: undefined reference to _imp__xmlFree From: Mike Peat <mpeat unicorninte ...