Flask是基于Python的轻量级Web开发框架,本文简述其构建web用用的基本步骤,以下内容默认开发环境为Ubuntu14.04.

本文参考Flask官方建教程翻译并整理:http://flask.pocoo.org/docs/0.10/

同时本本基于flask官方教程提供的example_code进行讲解:

一. 安装

  1. 安装python

     ~$: sudo apt-get install python

  2. 安装irtualenv

    virtualenv可以为python开发虚拟一个环境,使得当你的开发项目很多且依赖不同python版本的时候可以各自在一个虚拟环境下开发,互不影响。

     ~$: sudo apt-get install python-virtualenv

二.创建虚拟环境

  1. 选择一个工作目录

    我们在家目录下建立"tmp/flask"用来作为本实例的工作目录

     ~$:pwd

     ~$: ~/tmp/flask/$

  2. 创建虚拟环境

    我们在~/flask目录下为这个示例工程创建一个虚拟环境:

     ~/tmp/flask$: virtualenv venv

    执行命令后可以看到flask目录下多出一个venv目录,这就是创建的虚拟环境

  3. 激活虚拟环境

    通过如下命令激活这个虚拟环境:

     ~/tmp/flask$: . venv/bin/activate

    如果激活成功,会看到命令行提示开头有"(venv)",如下:

     (venv)xx@xx:~/tmp/flask$

    这样我们就可以随意配置这个虚拟环境,而不必担心破坏真实系统环境或者和其他项目的环境配置相冲突

  4. 在虚拟环境中安装Flask

    当虚拟环境被激活后,我们在当前命令行窗口执行命令安装一些工具,当然,这些安装只针对本虚拟环境有效

    我们使用pip命令来安装python包(创建虚拟环境时默认带有pip),我们先安装Flask包即可:

     env)xx@xx~/tmp/flask$: pip install Flask

  至此环境配置完毕

三. HelloWorld

  OK ,那么赶紧写一个helloworld示例

  编辑一个HelloWorld.py文件,内容如下:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def rootdir():
return "Hello, World!" if __name__ == '__main__':
app.run(host='0.0.0.0')

  然后在命令行执行如下命令启动此web应用:

   (venv)xx@xx:~/tmp/flask$: python HelloWorld.py

  然后在浏览器访问“http://0.0.0.0:5000/”即可返回HelloWorld!

Flask入门1-HelloWorld的更多相关文章

  1. Flask入门HelloWorld

    Flask入门HelloWorld Flask官网:http://flask.pocoo.org/ Flask中文翻译:http://dormousehole.readthedocs.io/en/la ...

  2. Flask入门笔记(一)

    一.程序的基本结构 1.1 最简单的Flask程序 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #coding=utf-8 # 初始化 from flask import Fla ...

  3. Netty入门之HelloWorld

    Netty系列入门之HelloWorld(一) 一. 简介 Netty is a NIO client server framework which enables quick and easy de ...

  4. Flask入门之结构重组(瘦身)-第13讲笔记

    1. pip list Flask 0.10.1 Flask-Bootstrap 3.3.5.6 Flask-SQLAlchemy 2 Flask-Script 2.0.5 Flask-WTF 0.1 ...

  5. Flask入门之Bootstrap介绍使用和Flask-Nav快速导航栏

    一.Bootstrap Bootstrap,来自 Twitter,是目前最受欢迎的前端框架. Python中,同样可以使用Bootstrap. 1. 导入Bootstrap库 from flask_b ...

  6. Flask入门之Pycharm写Hello Word

    在这里记录整理Flask入门的笔记! 今天讲讲使用Pycharm写一个Hello World 前提是已经安装好Pycharm,安装过程很简单,这里不赘述. 只放两个可以提供注册码的网站: Intell ...

  7. Flask入门和快速上手

    目录 Flask入门和快速上手 python三大主流框架对比 Flask安装 依赖 可选依赖 创建flask项目 flask最小应用--hello word 非法导入名称 调试模式 路由 唯一的 UR ...

  8. Flask 入门一( flask 框架和 flask-script 库)

    Flask 入门一( flask 框架 和 flask-script 库) 一.Flask框架: 1.简介 Flask是一个非常小的Python Web框架,被称为微型框架:只提供了一个稳健的核心,其 ...

  9. Flask入门 flask结构 url_for 重定向(一)

    Flask入门(一) 1 安装虚拟环境Mac,linux sudo pip install virtualenv ​ ubuntu系统 sudo apt-get install python-virt ...

  10. Flask入门系列(转载)

    一.入门系列: Flask入门系列(一)–Hello World 项目开发中,经常要写一些小系统来辅助,比如监控系统,配置系统等等.用传统的Java写,太笨重了,连PHP都嫌麻烦.一直在寻找一个轻量级 ...

随机推荐

  1. bzoj1202--带权并查集+前缀和

    http://www.lydsy.com/JudgeOnline/problem.php?id=1202 记s[i]=a[1]+a[2]+...+a[i],即s[i]为前缀和.再令v[i]=s[f[i ...

  2. 如何给Ubuntu12.10 安装Vmware Tools

    众所周知在VMware虚拟机中安装好了VMware Tools,才能实现主机与虚拟机之间的文件共享,同时可支持自由拖拽的功能,鼠标也可在虚拟机与主机之前自由移动(而不再用按ctrl+alT释放),而且 ...

  3. linux下的目录结构和内容

    用了这么长时间linux系统,有时候哪个文件应该在哪还是不知道的,所以对于根下的目录结构记下: /bin bin是Binary的缩写.这个目录存放着最经常使用的命令. /boot这里存放的是启动Lin ...

  4. 【夯实PHP基础】PHP的date函数

    本文地址 原文地址 提纲: 1. 引言 2. 代码示例 3. 参考资料 1. 引言 今天看到一段代码 $timeNew = date('n月j日', strtotime($oldTime)); 感觉有 ...

  5. PHP如何连接MySQL数据库

    * PHP连接MySQL数据库 * 准备工作 * 在XAMPP软件的安装目录/php/ext目录中 * php_mysql.dll和php_mysqli.dll文件必须存在 * 在XAMPP软件的安装 ...

  6. 前端弹出对话框 js实现 ajax交互

    原本计划实现这样一个需求: 前台点击触发某业务动作,需要用户补充信息,不做跳转页面,弹窗的形式进行补充信息. 折腾出来了,但是最终没有用到. 代码还有些毛躁,提供大概实现逻辑. 实现思路: 在窗口铺上 ...

  7. MyEclipse 2016 CI 3发布

    JSjet 语法高亮 受够了Eclipse中的JavaScript编码体验?那就来试试MyEclipse 2016 CI 3.JSjet改进了JavaScript编码的语法高亮功能,大大提升了代码的可 ...

  8. AE影视后期之跳跃音符制作

    制作跳动音符 新建项目 a.打开AE b.新建项目打开一张图片 c.新建合成将图片拖动到左下角的合成面板 新建文本图层. a.找到图层选项里面的新建text b.在里面输入IIIIIIIIIIIIII ...

  9. 【代码笔记】iOS-获得徐家汇的天气预报

    一,代码. //获得徐家汇的天气预报 -(void)getWeatherInfo{ NSError *error; NSURLRequest *request = [NSURLRequest requ ...

  10. iOS NSString中的搜索方法rangeOfString

    NSString *str = @"your://aaa?backscheme=my"; //在str中查找“backscheme=”,并返回一个NSRange类型的值,我们可以通 ...