本文前提 CentOS 6.7 64 bit root 用户 Zsh 介绍 Zsh 兼容 Bash,据传说 99% 的 Bash 操作 和 Zsh 是相同的 Zsh 官网:http://www.zsh.org/ 先看下你的 CentOS 支持哪些 shell:cat /etc/shells,正常结果应该是这样的: /bin/sh /bin/bash /sbin/nologin /bin/dash
入门指南 我们首先介绍如何配置开发环境,编译流程,以及代码规范。 开发环境 在Ubuntu 14.04下安装最新版的Rust: $ curl -sSf https://static.rust-lang.org/rustup.sh | sh -s -- --channel=nightly 为Atom编辑器安装Rust语法高亮支持: $ apm install language-rust 如果需要一个
每个人的学习方式都不一样,有的人喜欢亲自实践学习,有的喜欢观看教学视频,还有的喜欢通过阅读来学习。对于Redis,没有什么比亲自实践学习来得效果更好的了。Redis的安装非常简单。而且通过随之安装的一个简单的命令解析程序,就能处理我们想做的一切事情。让我们先花几分钟的时间把Redis安装到我们的机器上。 Windows平台 Redis并没有官方支持Windows平台,但还是可供选择。你不会想在这里
我们这里以项目 flask-todo-app 为例,介绍如何将其部署到生产环境,主要有以下几个步骤: 创建项目的运行环境 使用 Gunicorn 启动 flask 程序 使用 supervisor 管理服务器进程 使用 Nginx 做反向代理 创建项目的运行环境 创建 Python 虚拟环境,以便隔离不同的项目 安装项目依赖包 $ pip install virtualenvwrapper $ s
什么是 REST REST 全称是 Representational State Transfer,翻译成中文是『表现层状态转移』,估计读者看到这个词也是云里雾里的,我当初也是!这里,我们先不纠结这个词到底是什么意思。事实上,REST 是一种 Web 架构风格,它有六条准则,满足下面六条准则的 Web 架构可以说是 Restuful 的。 客户端-服务器(Client-Server) 服务器和客户
在前面,我们都是直接通过app=Flask(__name__)来创建一个app实例的。这样做没什么问题,但如果我们想为每个实例分配不同的配置,比如有测试环境的配置,开发环境的配置和生产环境的配置等,这时就比较麻烦了。 有什么办法呢? 其实我们可以通过调用一个函数来返回一个应用实例,比如下面的方法: def create_app(config_filename): app = Flask(_
Flask 提供了消息闪现的功能,以使我们的应用可以向用户反馈信息。比如,当用户登录失败了,我们会提醒用户名错误或者密码错误。 在 Flask 中使用消息闪现很简单。下面我们以上一篇的例子进行说明。完整的代码在这里。 首先,让我们看一下book.py的代码: # -*- coding: utf-8 -*- from flask import Blueprint, url_for, render_t
在前面,我们都是把代码写在单一的文件里面,虽然看起来很方便,但也只是供学习的时候用用而已,真正在一个实际项目中,是不应该这样做的,为什么呢? 我们还是从 hello world 开始讲起,新建一个脚本文件,比如 hello.py。 $ cat hello.py # -*- coding: utf-8 -*- from flask import Flask app = Flask(__name__)
Web 开发中经常需要处理 HTTP 请求、重定向和会话等诸多事务,相应地,Flask 也内建了一些常见的对象如 request, session, redirect 等对它们进行处理。 请求对象 request HTTP 请求方法有 GET、POST、PUT 等,request 对象也相应地提供了支持。举个例子,假设现在我们开发一个功能:用户注册。如果 HTTP 请求方法是 POST,我们就注册
什么是模板引擎 在 Web 开发中,我们经常会使用到模板引擎。简单点来说,我们可以把模板看成是一个含有某些变量的字符串,它们的具体值需要在动态运行时(请求的上下文)才能知道。比如,有下面一个模板: <h1>Hello, {{ name }}!</h1> 其中,name 是一个变量名,我们用 {{ }} 包裹它表示它是一个变量。我们给 name 传不同的值,模板会返回不同的字符串。像这样,使用真实的
静态文件,顾名思义,就是那些不会被改变的文件,比如图片,CSS 文件和 JavaScript 源码文件。默认情况下,Flask 在程序根目录中名为 static 的子目录中寻找静态文件。因此,我们一般在应用的包中创建一个叫 static 的文件夹,并在里面放置我们的静态文件。比如,我们可以按下面的结构组织我们的 app: app/ __init__.py static/
我们在前面的一小节介绍了一个简单的 Flask 程序是怎么运行的。其中,有三行代码,我们并没有深入讲解。在这里,我们就对它们进行深入解析。回顾这三行代码: @app.route("/") def hello(): return "Hello World!" 这三行代码的意思就是:如果浏览器要访问服务器程序的根地址(”/“),那么 Flask 程序实例就会执行函数 hello() ,返回『H
我们在第 1 章已经看到了一个简单的 Hello World 的例子,相信你已经成功地把它跑起来了,下面我们对这个程序进行讲解。回顾一下这个程序: $ cat hello.py from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello World!" if __name_
本章主要介绍 flask 的基础使用,主要包含以下几个方面: 路由和视图 静态文件 Jinja2 模板引擎 请求、重定向及会话 消息闪现 蓝图 工厂方法 REST Web 服务 部署