Django介绍
diango介绍
web框架介绍
web框架:
Web应用框架(Web application framework)是一种开发框架,用来支持动态网站、网络应用程序及网络服务的开发。其类型有基于请求的和基于组件的两种框架(取自百度百科)
简单来说:将web应用开发中通用的部分抽象出来,形成一个框架,在此基础上,再去实现特定功能
(类似建房子,装修前的粗房就是框架)
设置模式:
- MVC:Model-View-Contriller,模型-视图-控制
- MTV:Modle-Template-View,模型-模板-视图
socket服务端:收发数据,交互(接口)
概念解释:(取自百度百科)
Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,取后一种意思。通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,可以用来实现不同虚拟机或不同计算机之间的通信。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。
即:可以比喻为,socket相当于小区楼下的信箱,每一个信箱对应一户人家,选择不同的信箱实现邮件投递(即一个socket对应一个服务,选择所需要的服务端)
服务端/应用端:
服务器程序:接受和响应用户请求
应用程序:具体的业务逻辑
wsgi(Web Server Gateway Interface):
python web开发的标准,类似于协议。只要求提供一个函数(服务器调用,发起请求)
WSGI定义接口:只需要一个函数
def application(environ, start_response):
start_response('200 OK', [('Content-Type', 'text/html')])
return '<h1>Hello, WORLD!</h1>'
- application就是一个符合WSGI标准的函数,含有俩个参数
- environ:一个包含HTTP请求信息的对象(dict类型)
start——response:发送http响应的函数
djiango框架介绍
环境搭建,django安装
准备环境:
- ubuntu
- python 3.6+
- pycharm 2017+
- mysql
注意:每创建一个djiango项目,都要新建一个python的隔离环境
隔离环境
1.查看:workon
2.创建:mkvirtualenv -p /usr/bin/python3 envname
3.进入虚拟环境:workon envname
4.退出:deactivate
5.删除虚拟环境:rmvirtualenv envname
安装:pip install djiango
下面是操作:
1.创建一个自己文件夹下的隔离环境

2.下载django

项目创建
1.通用的简单的基本创建项目(不同的IDE直接创建会有差别,此处不说)
命令:djiango-admin startproject
下面式操作:
注意!!!——在使用虚拟机前要进行端口映射的配置,ssh的端口是22
先配置端口映射(本人的虚拟机使用Virtual Box):
目录一栏:管理->全局设定->网络->添加->双击NatNetWoek->端口映射->设置信息


右键虚拟机->选择设置->网路->连接方式选择NAT

配置好之后再配置PYCHARM:
创建一个项目,注意不要马上点击Create
选择Existing一项,点击三点(有些版本的会是ADD)

选择ssh一项,填写信息

输入密码,连接

点击next,然后还要选择解释器
home目录下的用户根目录下的.virtualenvs,中所创建的项目文件,中的bin中选择python3/3.6
本人的是:home/pyvip/.virtualenvs/crm/bin/python3


点击finish,再进行配置项目目录:
本人实在project文件下crm的隔离环境,根据自己的情况选择文件夹

然后创建项目
之后还要配置远程项目目录和下拉虚拟机中的文件:

注意要修改name


下拉文件:

启动服务
1.命令行:python manage.py runserver ip:port ip 0.0.0.0 0(端口自选,注意要设置端口映射;要在项目根目录下)
在虚拟机中运行命令:


在pycharm运行:
远程连接上虚拟机:


修改配置,不然会乱码:


修改成功:

pycharm上运行(相当于xshell作用):


2.配置pycharm
点击Add Configuration——>点击添加‘+’——>选择Django server
输入Host:0.0.0.0

点击下方灯泡(FIX)——>选择Django——>勾选——>设置根目录

——>设置setting——>选择项目下的setting文件

然后直接alppy和OK就设置好了,也可以选择修改‘name’,便于自己分辨

然后直接点击运行就OK了

成功!!!

第一个视图
项目,和应用
一个项目可以有多个应用
项目:设置了的Djiango(例如本人的CRM)
应用:包含模型、视图/模板以及urls的组合
创建一个应用的命令:python manage.py startapp appname
例如创建老师、学生端:(老师、学生相当于应用)
创建后刷新一下,并且下拉文件


写视图,在VIEWS里面写

创建路由,在teacher里面新建一个urls.py
写好路由,注意这是应用下的urls,不是项目的,是子urls
还需要在根urls配置

配置根urls

运行,在网页输入

Django介绍的更多相关文章
- Django介绍、安装配置、基本使用、Django用户注册例子
Django介绍 Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站 DjangoMTV的思想 没有controller ...
- Django 介绍、安装配置、基本使用、Django 用户注冊样例
Django介绍 Django 是由 Python 开发的一个免费的开源站点框架.能够用于高速搭建高性能.优雅的站点. DjangoMTV 的思想项目架构图 ...
- 一、Django介绍
一.Django介绍 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django.Django 是一个开放源代码的 Web 应用框 ...
- django介绍及路由系统
第一:Python的web框架介绍 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引 ...
- Django介绍(1)
https://www.cnblogs.com/yuanchenqi/articles/6083427.html 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构, ...
- (转)Django学习之 第一章:Django介绍
Django: Python编程Web框架 如果你上djangoproject.com你会发现对Django的如下解释: “Django is a high-level Python Web fram ...
- Django介绍(3)
https://www.cnblogs.com/yuanchenqi/articles/5786089.html
- Django介绍(2)
https://www.cnblogs.com/yuanchenqi/articles/5658455.html
- Django 基础介绍
Django 介绍 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由 ...
随机推荐
- 搭建本地yum仓库(centos 7.5)
1. 保留下载的软件包 [root@zabbix-server01 ~]# vim /etc/yum.conf keepcache=1 #开启后下载的软件都会保存到本地 2.将软件进行下载,并将所有r ...
- ORA-01589解决
错误展现如下: sqlplus /nolog SQL> conne /as sysdbaConnected.SQL> shutdown abortORACLE instance shut ...
- react-native 导入高德地图
高德官网 : https://lbs.amap.com/ GitHub地址: https://github.com/qiuxiang/react-native-amap3d 安装的时候遇到错误:一般是 ...
- 选择排序java实现
package text.algorithm; /** * 选择排序 * O(n^2);空间复杂度O(1); */public class SelectionSort { public static ...
- 解决mysql连接报“Communications link failure”错误
<!--定义在从数据库获取新连接失败后重复尝试的次数.默认值: 30 :小于等于0表示无限次--> <property name="acquireRetryAttempts ...
- react中对于key值的理解
1.key是用来帮助react识别哪些内容被更改.添加或者删除.key需要写在用数组渲染出来的元素内部,并且需要赋予其一个稳定的值.如果key值发生了变更,react则会触发UI的重渲染. 2.在相邻 ...
- 安卓GridView奇偶行不同颜色
背景:安卓制作表格,两列多行,奇数行和偶数行背景色不同 分析:GridView是经常用来制作表格的,但是和ListView不同,不能简单的用position % 2 == 0/1 来判断奇偶行,下面提 ...
- [Offer收割] 编程练习赛63
题目1 : 命名 时间限制:5000ms 单点时限:1000ms 内存限制:256MB 描述 有两个公司想要合并,第一个公司的名字是一个字符串S,第二个公司的名字是一个字符串T. 合并后的新公司是这样 ...
- Vue 组件&组件之间的通信 之 单向数据流
单向数据流:父组件值的更新,会影响到子组件,反之则不行: 修改子组件的值: 局部数据:在子组件中定义新的数据,将父组件传过来的值赋值给新定义的数据,之后操作这个新数据: 如果对数据进行简单的操作,可以 ...
- bzoj1452 [JSOI2009]Count ——二维树状数组
中文题面,给你一个矩阵,每一个格子有数字,有两种操作. 1. 把i行j列的值更改 2. 询问两个角坐标分别为(x1,y1) (x2,y2)的矩形内有几个值为z的点. 这一题的特点就是给出的z的数据范围 ...