Python之Web框架Django
Python之Web框架:
Django
一. Django
Django是一个卓越的新一代Web框架

Django的处理流程
1. 下载地址
Python 下载地址:https://www.python.org/downloads/
Django 下载地址:https://www.djangoproject.com/download/
注: 安装Django前必须先安装Python。
2. 安装
Windows下安装:(这里使用pycharm)
>> pip3 install Django
添加环境变量:
将这几个目录添加到系统环境变量中:
C:/Python33/Lib/site-packages/django;C:/Python33/Scripts。 添加完成后就可以使用Django的django-admin.py命令新建工程了。

检查一下是否安装成功:

3. 创建project
>django-admin.py startproject mysite
注: 因为之前已经创建这里使用mysite_Django

这样就会自动生成几个目录:

在Django中基本的项目包含四个文件:
mysite_Django
__init__.py: 告诉python这是一个软件包
settings.py: 项目相关的配置文件
urls.py : 全局URL配置(路由系统)
wsgi.py: WSGI ,默认使用wsgi的socket
manage.py: django程序启动文件
4. 创建APP
一个project下可以创建多个APP
> python manage.py startapp cmdb #创建名为cmdb的app

这样就会看到已被创建的cmdb:

cmdb下自动生成的应用文件:
__init__.py : 告诉Python是一个包
admin.py : 默认后台管理
apps.py: 当前app的配置文件
models.py: 与数据相关的(数据模型)
tests.py : 单元测试
views : 视图函数,处理业务请求。
5. 编写代码
目前为止已经创建了项目和APP,urls和views.py文件中目前还没有真正的代码,需要后添加代码。
自定义页面:
urls.py: 添加url路径,默认为admin
urls
views
4. 启动Django程序
> python manage.py runserver 127.0.0.1:8000

也可以通过pycharm执行:


启动后提示我们访问http://127.0.0.1:8000/,但是访问后报错404网页不存在,因为我们自定义页面为index,加上index即可:

这样可以看到响应的结果。
5. 使用模板
settings配置
render(request, '路径')
首先创建一个模板路径templates并创建一个html文件index.html

index
接下来我们需要到配置文件settings里配置路径,不然找不到html文件:

找到“TEMPLATES” 字段添加路径:

注: BASE_DIR: 此文件开头部分定义:

重新启动后访问查看结果:

可以看到已经引用了自定义的html文件。
6. 静态文件配置
创建静态文件目录statics,这里引入jQuery:

1 <!DOCTYPE html>
2 <html lang="en">
3 <head>
4 <meta charset="UTF-8">
5 <title>Title</title>
6 </head>
7 <body>
8 <h1 style="color: red">
9 Hello,Word
10 </h1>
11 <script src="/prefix/jquery-1.12.4.js"> #修改定义的前缀prefix
12
13 </script>
14 </body>
15 </html>
修改配置文件路径:
1 ##settings最下边配置路径
2
3 STATIC_URL = '/prefix/' #前缀
4 STATICFILES_DIRS = (
5 os.path.join(BASE_DIR, 'statics'), #js路径
6 )
重新启动测试:

F12打开调试模式后右击我们自己定义的jQuery文件,打开,可以看到内容说明成功

7. 连接数据库
ORM
settings.py
(1)定义数据库用户信息
1 #models.py数据库
2
3 from django.db import models
4
5 # Create your models here.
6 #创建类定义用户信息
7 class UserInfo(models.Model):
8 user = models.CharField(max_length=32)#指定字符串长度
9 email = models.CharField(max_length=32)
(2) 注册APP
settings.py
1 #修改INSTALLED_APP字段,添加自定义APP :cmdb
2
3 INSTALLED_APPS = [
4 'django.contrib.admin',
5 'django.contrib.auth',
6 'django.contrib.contenttypes',
7 'django.contrib.sessions',
8 'django.contrib.messages',
9 'django.contrib.staticfiles',
10 'cmdb'
11 ]
(3) 创建数据库,默认使用自带sqlite数据库
settings.py

执行命令创建:
> python manage.py makemigrations

> python manage.py migrate

数据库表已经创建
8. 操作数据库
创建:
models.类.objects.create()
获取:
models.类.objects.all()
Python之Web框架Django的更多相关文章
- Python3.5学习十八 Python之Web框架 Django
Python之Web框架: 本质:Socket 引用wsgiref创建web框架 根据web框架创建过程优化所得: 分目录管理 模板单独目录 执行不同函数单独存入一个方法py文件 Web框架的两种形式 ...
- Python 17 web框架&Django
本节内容 1.html里面的正则表达式 2.web样式简介 3.Django创建工程 Html里的正则表达式 test 用来判断字符串是否符合规定的正则 rep.test('....') ...
- python三大web框架Django,Flask,Flask,Python几种主流框架,13个Python web框架比较,2018年Python web五大主流框架
Python几种主流框架 从GitHub中整理出的15个最受欢迎的Python开源框架.这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试,爬虫等. Django: Python We ...
- Python编程Web框架 :Django 从入门到精通
Django是一个高级别的Python Web框架,它鼓励快速开发和干净实用的设计. 现在我们开始学习它. Django学习之 第一章:Django介绍 Django学习之 第二章:Django快速上 ...
- python的web框架---Django项目
Django项目之会议室预预订: 界面效果展示: 1.创建超级管理员,实现预定界面功能 2.预定界面: (一)基于pymysql设计数据表结构,理清前后端与用户交互逻辑.(用户表,会议室表,预定内容存 ...
- 在python的web框架Django中使用SQL Server
在pycharm中安装 安装pyodbc和Django——pyodbc是一个用python写的ODBC引擎 安装Django-pyodbc-azure 在后方网址中查 ...
- python运维开发(十七)----jQuery续(示例)web框架django
内容目录: jQuery示例 前端插件 web框架 Django框架 jQuery示例 dom事件绑定,dom绑定在form表单提交按钮地方都会绑定一个onclick事件,所有查看网站的人都能看到代码 ...
- 利用python web框架django实现py-faster-rcnn demo实例
操作系统.编程环境及其他: window7 cpu python2.7 pycharm5.0 django1.8x 说明:本blog是上一篇blog(http://www.cnblogs.co ...
- Python之Web框架
Python之Web框架: 一. Web框架的本质: 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. #!/usr/bin/env pyth ...
随机推荐
- iOS开发小技巧 - label中的文字添加点击事件
Label中的文字添加点击事件 GitHub地址:https://github.com/lyb5834/YBAttributeTextTapAction 以前老师讲过类似的功能,自己懒得回头看了,找了 ...
- Android Studio中的CmakeList NDK配置
Android Studio2.2之后直接可以在创建工程时添加NDK支持了,添加之后,main文件夹下会多出一个native-lib.cpp这个文件,如果只为了一个简单的NDK接口,貌似这就结束了.直 ...
- 页内多个input全选不干扰且只用一段代码。
//html内容 <body> <div id="d1"> <input type="checkbox" class=" ...
- Leetcode 60. Permutation Sequence
The set [1,2,3,-,n] contains a total of n! unique permutations. By listing and labeling all of the p ...
- BZOJ3670 [Noi2014]动物园
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- spring mvc重定向方法
一.不带参数,直接重定向到另一个地址: 返回String直接跳转,如: @RequestMapping(value = "/filehandle") public String u ...
- Linux哲学思想--基本法则
1.一切皆文件: 2.单一目的的小程序: 3.组合小程序完成复杂任务: 4.文本文件保存配置信息: 5.尽量避免捕获用户接口: 6.提供机制,而非策略. 自从Linux一诞生就注定了其成为经典的命运. ...
- django的cookie和session以及内置信号、缓存
cookie和session cookie和session的作用: cookie和session都记录了客户端的某种状态,用来跟踪用户访问网站的整个回话.两者最大的区别是cookie的信息是存放在浏览 ...
- border:none 和border:0区别差异
border:none与border:0的区别体现为两点:一是理论上的性能差异,二是浏览器兼容性的差异. 性能差异: [border:0;]把border设为“0”像素效果等于border-width ...
- SQL Server 2008 允许远程连接的配置
如果无法通过IP地址远程连接你的SQL Server 2008服务器,可以参考下面的内容进行设置.在进行下述设置之前,应该确保你的网络已经安装设置完毕,服务器已经正常连接到网络中. 1.单击Windo ...