web 应用设计模式(MTV MVC):

MTV:

M:models 模型;负责业务数据对象与数据库对象;

T:templates 模板;负责如何把数据展示给用户;

V:views 视图;负责业务逻辑

MVC:

M:models 模型;负责业务数据对象与数据库对象;

V:views 视图;负责与用户交互的页面;

C:controller;控制器 ;接受用户的输入调用模型与视图

web 应用框架——Django:

django 2.1文档:https://docs.djangoproject.com/en/2.1/

  http服务器:用来接收用户请求,并将请求发给web应用框架进行处理;

  Web应用框架处理完以后再发送给http服务器,http服务器再返回给用户

安装 Django:

pip install django

创建django项目:

命令行创建:

django-admin startproject projectname

pycharm中创建:

启动项目(开启服务):

一:在项目的根目录下用命令行运行:

   python mange.py runserver 0.0.0.0:port

   将settings文件里设置 ALLOWED_HOSTS = [ ] 改成 ALLOWED_HOSTS = [' * '];表示允许访问的客户端的地址,‘ * ’ 表示的是任意 IP 地址

二:在 pycharm 里运行:

   有 fix 再点击fix进到这个页面:

项目目录及文件说明:

  manage.py:django中的一个命令行工具,管理django项目;根目录;

  __init__.py:空文件,告诉python这个目录是python包;

  setting.py:配置文件,包含数据库信息,调试标志,静态文件等;

  urls.py:django项目的URL声明;

  wsgi.py:部署服务器用到的

    WSGI:(PythonWeb服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)是Python应用程序或框架和Web服务器之间的一种接口,已经被广泛接受, 它已基本达成它的可移植性方面的目标。)

创建视图函数(创建应用):

  命令行:

    python manage.py startapp appname

pycharm:

1、在项目目录下创建 views.py 的函数

2、定义视图对应的URL

将新创建的 app 添加到 主目录的 setting.py 文件中的 INSTALLED_APPS 进行注册;

项目与对应app的关系:

整理:

1.环境准备:

- Ubuntu

- python 3.5+

- pycharm 2017.1.5+

- MySQL

2.python虚拟环境的重要性

-什么是python虚拟环境

通过工具,将系统上的python复制了一份。

-为什么要有

1.不会污染系统环境

2.不同的项目环境的隔离

-创建虚拟环境(以我们提供的ubuntu为例)

1.查看当前有哪些虚拟环境:workon

2.创建虚拟环境:mkvirtualenv -p /usr/bin/python3 envname

3.进入虚拟环境:workon envname

4.退出虚拟环境:deactive

5.删除虚拟环境:rmvirtualenv envname

3.django安装

pip install django

4.简单操作

1.创建项目

django-admin startproject <projectname>

2.启动项目

项目的根目录下运行

python manage.py runserver 0.0.0.0:8000

3、创建视图:

    python manage.py startapp appname

Django 学习第一天——django 基本介绍和环境搭建的更多相关文章

  1. 《精通并发与Netty》学习笔记(01 - netty介绍及环境搭建)

    一.Netty介绍     Netty是由JBOSS提供的一个java开源框架.Netty提供异步的.事件驱动的网络应用程序框架和工具,用以快速开发高性能.高可靠性的网络服务器和客户端程序.     ...

  2. Python零基础学习系列之二--Python介绍及环境搭建

    1-1.Python简介: Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.Python由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年.像P ...

  3. Python介绍及环境搭建

    摘自http://www.cnblogs.com/sanzangTst/p/7278337.html Python零基础学习系列之二--Python介绍及环境搭建   1-1.Python简介: Py ...

  4. Magento学习第一课——目录结构介绍

    Magento学习第一课--目录结构介绍 一.Magento为何强大 Magento是在Zend框架基础上建立起来的,这点保证了代码的安全性及稳定性.选择Zend的原因有很多,但是最基本的是因为zen ...

  5. [转]ZooKeeper学习第一期---Zookeeper简单介绍

    ZooKeeper学习第一期---Zookeeper简单介绍 http://www.cnblogs.com/sunddenly/p/4033574.html 一.分布式协调技术 在给大家介绍ZooKe ...

  6. Django 01 django基本介绍及环境搭建

    Django 01 django基本介绍及环境搭建 #http服务器 #用来接收用户请求,并将请求转发给web应用框架进行处理 #Web应用框架 #处理完请求后在发送给http服务器,http服务器在 ...

  7. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  8. Java 学习笔记 第一章:Java语言开发环境搭建

    第一章:Java语言开发环境搭建 第二章:常量.变量和数据类型 第三章:数据类型转换.运算符和方法入门 1.Java虚拟机——JVM JVM(Java Virtual Machine ):Java虚拟 ...

  9. Maven快速入门(一)Maven介绍及环境搭建

    做开发的程序员都知道,在系统开发需要各自各样的框架.工具.其中有一种工具不管你是初级程序员还是高级程序员都必须熟练掌握的,那就是项目管理工具(maven.ant.gradle).接下来就总结Maven ...

随机推荐

  1. MySQL内连接、外连接、交叉连接

    外连接: 左连接:left join 或 left outer join 以左边的表为基准,如果左表有数据,而右表没有数据,左表的数据正常显示,右表数据显示为空. 创建user表,用于记录用户 use ...

  2. android studio 清空缓存插件

    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0308/4036.html 一个提高开发效率的ADB插件:ADB IDEA 泡在 ...

  3. STM32 变量无法赋值问题

    STM32 在用JLink 调试的时候发现有一条将unsigned char赋值给int的语句始终不能执行,int类型变量的值始终为0: 查资料找到这个问题是编译器优化的原因,也就是说由于编译器优化, ...

  4. 【vim】缩写 :ab [缩写] [要替换的文字]

    一个很可能是最令人印象深刻的窍门是你可以在 Vim 中定义缩写,它可以实时地把你输入的东西替换为另外的东西.语法格式如下: :ab [缩写] [要替换的文字] 一个通用的例子是: :ab asap a ...

  5. GPIO接口解析【转】

    本文提供了一个linux下访问GPIO的约定的概述. 这些调用使用gpio_* 命名前缀.没有别的调用会使用这个前缀或是相关的__gpio_*前缀. 转自:http://blog.163.com/w5 ...

  6. Node 7.6默认支持Async/Await

    Node.js 7.6正式默认支持async/await功能,并能够使低内存设备获得更出色的性能. Node 7.6对async/await的支持来自于将V8(Chromium JavaScript引 ...

  7. discuz安装:mysqli_connect()不支持advice_mysqli_connect

    原文:http://blog.csdn.net/changzhi1990/article/details/40983247 php -m 输出: PHP Warning: PHP Startup: U ...

  8. Codeforces Round #Pi (Div. 2) C

    题意 : 给你一个序列,和 K ,选3 个数,下标严格递增, 满足 为递增的等比数列, 等比为K 思路 : 先统计所有数的个数,枚举等比数列的中间数 A, 计算 A 之后的 A*K的个数, A之前的 ...

  9. 【linux】ubuntu下crontab无效解决方法

    在Debain的docker中启用crontab,踩了一整天的坑,特地记录一下.Debain和ubuntu差不多,故算在ubuntu下面了. 1.第一个坑,安装crontab apt-get inst ...

  10. 2017-2018-2 20155309 南皓芯 Exp9 Web安全基础

    基础问题回答 1.SQL注入攻击原理,如何防御 原理:它是利用现有应用程序,将恶意的SQL命令注入到后台数据库引擎执行的能力,它可以通过在Web表单中输入恶意SQL语句得到一个存在安全漏洞的网站上的数 ...