博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Django介绍
阅读量:5297 次
发布时间:2019-06-14

本文共 2405 字,大约阅读时间需要 8 分钟。

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 '

Hello, WORLD!

'
  • 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.创建一个自己文件夹下的隔离环境
1488523-20190319191859109-2143611315.png
2.下载django
1488523-20190319192019010-1238566205.png

项目创建

1.通用的简单的基本创建项目(不同的IDE直接创建会有差别,此处不说)

命令:djiango-admin startproject

下面式操作:

注意!!!——在使用虚拟机前要进行端口映射的配置,ssh的端口是22

先配置端口映射(本人的虚拟机使用Virtual Box):

目录一栏:管理->全局设定->网络->添加->双击NatNetWoek->端口映射->设置信息

1488523-20190319192259755-693092213.png

1488523-20190319192303716-1115891349.png

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

1488523-20190319192308386-2084859545.png

配置好之后再配置PYCHARM:

创建一个项目,注意不要马上点击Create

选择Existing一项,点击三点(有些版本的会是ADD)
1488523-20190319193022113-328368189.png

选择ssh一项,填写信息

1488523-20190319192843388-1598213489.png

输入密码,连接

1488523-20190319192847366-647834833.png

点击next,然后还要选择解释器

home目录下的用户根目录下的.virtualenvs,中所创建的项目文件,中的bin中选择python3/3.6

本人的是:home/pyvip/.virtualenvs/crm/bin/python3

1488523-20190319193525035-1777986143.png
1488523-20190319193910202-67207019.png

点击finish,再进行配置项目目录:

本人实在project文件下crm的隔离环境,根据自己的情况选择文件夹
1488523-20190319193934548-1769220917.png
然后创建项目

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

1488523-20190319194146574-1783076270.png

注意要修改name
1488523-20190319194219035-493183686.png

1488523-20190319194228068-1891661964.png

下拉文件:

1488523-20190319194335342-1747708195.png

启动服务

1.命令行:python manage.py runserver ip:port ip 0.0.0.0 0(端口自选,注意要设置端口映射;要在项目根目录下)

在虚拟机中运行命令:
1488523-20190320130855314-1734454733.png

1488523-20190320130928594-1615947718.png

在pycharm运行:

远程连接上虚拟机:
1488523-20190320131041288-29053480.png

1488523-20190320131045423-702110315.png

修改配置,不然会乱码:

1488523-20190320131050077-737853510.png

1488523-20190320131052866-56529924.png

修改成功:

1488523-20190320131100195-843144349.png

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

1488523-20190320131106841-1081166141.png

1488523-20190320131111157-192025964.png

2.配置pycharm

点击Add Configuration——>点击添加‘+’——>选择Django server

输入Host:0.0.0.0

1488523-20190320131858849-1390365636.png

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

1488523-20190320132144404-607389544.png

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

1488523-20190320132352498-1414567826.png

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

1488523-20190320132757460-1277109992.png

然后直接点击运行就OK了

1488523-20190320132917339-258796776.png

成功!!!

1488523-20190320131111157-192025964.png

第一个视图

项目,和应用

一个项目可以有多个应用
项目:设置了的Djiango(例如本人的CRM)
应用:包含模型、视图/模板以及urls的组合

创建一个应用的命令:python manage.py startapp appname

例如创建老师、学生端:(老师、学生相当于应用)

创建后刷新一下,并且下拉文件

1488523-20190320133959708-1696869822.png

1488523-20190320134000779-1196497930.png

写视图,在VIEWS里面写

1488523-20190320134501179-1351122268.png

创建路由,在teacher里面新建一个urls.py

写好路由,注意这是应用下的urls,不是项目的,是子urls
还需要在根urls配置

1488523-20190320134800668-494527144.png

配置根urls

1488523-20190320135500330-1653270290.png

运行,在网页输入

1488523-20190320135501373-484283797.png

转载于:https://www.cnblogs.com/pygive/p/10564507.html

你可能感兴趣的文章
Linux的SVN——RapidSVN及其diff与edit工具配置
查看>>
HTML标签
查看>>
hdu 5592 ZYB's Premutation(线段树优化)
查看>>
Interesting Yang Yui Triangle(hdu3304)
查看>>
ansible总结
查看>>
面试题1字符串的压缩
查看>>
几个孩子围成圈报数 当等于3的时候删除 链表实现 最终输出剩下孩子的编号
查看>>
BZOJ 1853
查看>>
mysql 综合
查看>>
js函数收集
查看>>
python初学的问题记录3-4
查看>>
20169212《Linux内核原理与分析》 第十周作业
查看>>
xml
查看>>
【codeforces 760D】Travel Card
查看>>
HDU 3790 最短路径问题
查看>>
Python实现简单登陆验证(文件操作)
查看>>
自动化构建工具
查看>>
Jan 15 - Next Permutation; Array; Pointer;
查看>>
分布式网上商城项目-项目查询功能错误
查看>>
如何使用帮助文档
查看>>