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介绍的更多相关文章

  1. Django介绍、安装配置、基本使用、Django用户注册例子

    Django介绍     Django 是由 Python 开发的一个免费的开源网站框架,可以用于快速搭建高性能,优雅的网站     DjangoMTV的思想         没有controller ...

  2. Django 介绍、安装配置、基本使用、Django 用户注冊样例

    Django介绍         Django 是由 Python 开发的一个免费的开源站点框架.能够用于高速搭建高性能.优雅的站点.              DjangoMTV 的思想项目架构图 ...

  3. 一、Django介绍

    一.Django介绍 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django.Django 是一个开放源代码的 Web 应用框 ...

  4. django介绍及路由系统

    第一:Python的web框架介绍 Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了ORM.模型绑定.模板引 ...

  5. Django介绍(1)

    https://www.cnblogs.com/yuanchenqi/articles/6083427.html 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构, ...

  6. (转)Django学习之 第一章:Django介绍

    Django: Python编程Web框架 如果你上djangoproject.com你会发现对Django的如下解释: “Django is a high-level Python Web fram ...

  7. Django介绍(3)

    https://www.cnblogs.com/yuanchenqi/articles/5786089.html

  8. Django介绍(2)

    https://www.cnblogs.com/yuanchenqi/articles/5658455.html

  9. Django 基础介绍

    Django 介绍 Python下有许多款不同的 Web 框架.Django是重量级选手中最有代表性的一位.许多成功的网站和APP都基于Django. Django是一个开放源代码的Web应用框架,由 ...

随机推荐

  1. vue-cli —— 项目打包及一些注意事项

    打包方法: 1.把绝对路径改为相对路径:打开config/index.js 会看到一个build属性,这里就是我们打包的基本配置了.在这里可以修改打包的目录,打包的文件名.最重要的是一定要把绝对目录改 ...

  2. OGG 18.1 for mysql远程捕获测试

    Ogg18.1 remote capture要求mysql为5.7版本,只能从linux远程捕获mysql on windows or linux,且不支持DDL捕获.支持远程mysql为commun ...

  3. python numpy科学计算和数据分析的基础包

    import numpy as np #创建ndarray# data1 = [6, 5, 7, 1, 3]# arrl = np.array(data1)# print(arrl)#多维列表创建nd ...

  4. 【题解】Luogu P4867 Gty的二逼妹子序列

    原题传送门 同Luogu P4396 [AHOI2013]作业 询问多了10倍,但还能跑过(smog #include <bits/stdc++.h> #define N 100005 # ...

  5. kubernets event 分析

    1. event 是一个很重要的组成部分 event 分析 Kubernetes(K8s)Events介绍(上) Kubernetes Events介绍(中) Kubernetes Events介绍( ...

  6. docker17.03.2安装

    之前安装过docker 卸载 yum -y remove docker docker-common docker-selinux docker-engine docker-engine-selinux ...

  7. 某大公司的sql面试题

    问:关系模式:User(userId, userName), Article(articleId, userId, title,   content),Vote(articleId, score),U ...

  8. 【新特性】JDK1.6

    一.Desktop类和SystemTray类 在JDK6中 ,AWT新增加了两个类:Desktop和SystemTray. 前者可以用来打开系统默认浏览器浏览指定的URL,打开系统默认邮件客户端给指定 ...

  9. 快速签发 Let's Encrypt 证书指南

    本文仅记录给自己的网站添加"小绿锁"的动手操作过程,不涉及 HTTPS 工作原理等内容的讲解,感兴趣的同学可以参考篇尾的文章自行了解. 简单了解下我的实验环境: 云服务器:Cent ...

  10. visual编译通过后,debug报错找不到*.dll

    解决: 在debug目录下放入*.dll