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安装及创建工程的更多相关文章

  1. 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, ...

  2. Django 使用Pycharm 创建工程

    一.Pycharm 创建Django 工程 事实上,我们一般不使用命令行,而是直接在Pycharm 中创建Django 项目. Pycharm 是进行Django 开发的最佳 IDE,请大家自行安装, ...

  3. Django 使用cmd 创建工程

    一.Django 安装 1 通过pip安装 Django 如果你是通过升级的方式安装Django,那么你需要先卸载旧的版本. Django 提供3种发行版本,推荐使用官方的稳定版本: 你的操作系统提供 ...

  4. Django 使用VScode 创建工程

    一.VSCode 创建Django 工程 VSCode 官方: https://code.visualstudio.com 1 mysite(项目名),创建Django 项目,可以和虚拟环境放在同一目 ...

  5. Django安装与创建项目

    下载 https://media.djangoproject.com/releases/1.11/Django-1.11.20.tar.gz 解压 tar -zvxf Django-1.11.20.t ...

  6. python 自动化之路 day 18 前端内容回顾、补充/Django安装、创建

    前端回顾: 整体: - HTML - CSS - JavaScript - 基本数据类型 - for,while.. - DOM - obj = document.getElementById('.. ...

  7. CCS V5 使用教程一: 安装激活与创建工程

    CCS下载与安装 下载地址 Liscense下载地址 安装教程 创建工程 工程创建教程

  8. frist Django app — 一、 创建工程

    缘起 既然python都学了,学习python的时候感觉是相见恨晚,一种新的编程语言带给我一种新的思考问题的方式,为了巩固学过的东西并进一步学习python,就想学学Django,看看会不会带给我关于 ...

  9. Django在Win7下安装与创建项目hello word示例

    Django在Win7下的安装及创建项目hello word的例子 有关python 的django 框架安装与开发的小例子.Django在Win7下的安装及创建项目hello word.1.安装:命 ...

随机推荐

  1. CodeForces 732C Sanatorium

    C. Sanatorium time limit per test 1 second memory limit per test 256 megabytes input standard input ...

  2. C#中资源文件的使用

    在程序中会用到图片,有两种方法,一种是将图片放在运行文件夹中,直接调用,另一种是将图片放入资源文件中. 方法一,一般在.exe文件同级创建文件夹,如“ico”,然后把图标放进去.在程序中代码采用相对路 ...

  3. MySQL给一个字段递增赋值

    https://blog.csdn.net/kriszhang/article/details/72125203 首先设置一个变量,初始值为0: set @r:=0; 1 然后更新表中对应的ID列: ...

  4. hotspot的简单介绍

    慢慢开始深入了解java,才知道java虚拟机有很多种,其中最为知名的应该就是hotspot了,接下来是hotspot的一点简单介绍. 没错,Java是解释语言,但并不意味着它一定被解释执行.早期 的 ...

  5. node.js + mongodb 做项目的详解(二)

    这次内容是结合bootstrap把登陆注册做好,还有就是express的中间件等问题. 看这篇博客之前建议先看我上篇写的那篇博客http://www.cnblogs.com/hubwiz/p/4118 ...

  6. java基础 01

    java基础01 1. /** * JDK: (Java Development ToolKit) java开发工具包.JDK是整个java的核心! * 包括了java运行环境 JRE(Java Ru ...

  7. ledecode Reverse Words in a String III

    557. Reverse Words in a String III Given a string, you need to reverse the order of characters in ea ...

  8. 【numpy】

    ndarray在某个维度上堆叠,np.stack() np.hstack() np.vstack() https://blog.csdn.net/csdn15698845876/article/det ...

  9. Girls' research---hdu3294(回文子串manacher)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3294 给出一个字符串和加密的字符规律 例如 c abcba c代表把串中的c改成a,d改成b... b ...

  10. js小数四舍五入,保留两位小数

    直接用用number.toFixed(2)即可 <template> <section class="p-10"> <h1> {{ number ...