当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

flask-redis

A Flask extension for using Redis
授权协议 View license
开发语言 Python
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 不详
投 递 者 何灿
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

flask-redis

A nice way to use Redis in your Flask app.

Configuration

Start by installing the extension with pip install flask-redis.Once that's done, configure it within your Flask config.Set the URL of your Redis instance like this:

REDIS_URL = "redis://:password@localhost:6379/0"

If you wanna connect to a Unix socket,you can specify it like "unix://:password@/path/to/socket.sock?db=0".

Usage

Setup

To add a Redis client to your application:

from flask import Flask
from flask_redis import FlaskRedis

app = Flask(__name__)
redis_client = FlaskRedis(app)

or if you prefer, you can do it the other way around:

redis_client = FlaskRedis()
def create_app():
    app = Flask(__name__)
    redis_client.init_app(app)
    return app

The FlaskRedis client here will pass its keyword argumentsto the Redis classfrom the redis-py library,so all parameters from the Redis documentation page will work here as well— such as socket_timeout and encoding.

Accessing Redis

Access is done by using FlaskRedis as if it was aRedis classas well:

from my_app import redis_client

@app.route('/')
def index():
    return redis_client.get('potato')

For detailed instructions on what methods you can use on the client,as well as how you can use advanced featuressuch as Lua scripting, pipelines, and callbacks,please check theredis-py documentation.

Pro-tip: The redis-pypackage uses the redis namespace, so it's nicer to name your Redis object something like redis_client instead of just redis.

Extra features in flask-redis

Custom providers

Instead of the default Redis client from redis-py,you can provide your own.This can be useful to replace it with mockredis for testing:

from flask import Flask
from flask_redis import FlaskRedis
from mockredis import MockRedis


def create_app():
    app = Flask(__name__)
    if app.testing:
        redis_store = FlaskRedis.from_custom_provider(MockRedis)
    else:
        redis_store = FlaskRedis()
    redis_store.init_app(app)
    return app

Contributing

  1. Check for open issues or open a fresh issue to start a discussion
  2. Fork the repository on GitHub.
  3. Send a pull request with your code!

Merging will require a test which shows that the bug was fixed,or that the feature works as expected.Feel free to open a draft pull request though without such a testand ask for help with writing it if you're not sure how to.

As Bence (the only maintainer) works full-time,please allow some time before your issue or pull request is handled.

  • flask-redis 安装 pip install flask-redis 配置 redis数据库链接格式 REDIS_URL = "redis://:password@localhost:6379/0" 导入模块 from flask_redis import FlaskRedis 导入数据库配置链接 REDIS_URL = "redis://:password@localhost:63

  •  官方文档:https://pypi.org/project/flask-redis/ python-redis文档:https://redis-py.readthedocs.io/en/latest/   本人自己封装的own-redis类  from flask_redis import FlaskRedis redis_client = FlaskRedis() class OwnRe

 相关资料
  • 问题内容: 在官方的快速入门中,建议在使用单个 模块 时使用: 2. …如果您使用的是单个模块(如本例所示),则应使用,因为取决于它是作为应用程序启动还是作为模块导入,其名称将有所不同(与实际导入名称不同)。… 但是,在他们的API文档中,当我的应用程序为 软件包 时,建议进行硬编码: 因此,您在此处提供的内容很重要。如果使用单个模块,则始终为正确的值。但是,如果您使用的是包,通常建议在其中硬编码

  • 在前面,我们介绍了 REST Web 服务,并使用 Flask 提供服务。这里,我们使用第三方库 Flask-RESTful,它使得在 Flask 中提供 REST 服务变得更加简单。 安装 使用 pip 安装: $ pip install flask-restful 使用 下面我们主要使用官方文档的例子进行说明。 Hello World 我们先来看一个简单的例子。 # -*- coding: u

  • Bootstrap 是 Twitter 开源的一个 CSS/HTML 框架,它让 Web 开发变得更加迅速,简单。要想在我们的 Flask 应用中使用 Boostrap,有两种方案可供选择: 第 1 种,在我们的 Jinja 模板中直接引入 Bootstrap 层叠样式表 (CSS) 和 JavaScript 文件,比如 bootstrap.min.css,bootstrap.min.js; 第

  • 在 Web 应用中,我们经常需要保护我们的 api,以避免非法访问。比如,只允许登录成功的用户发表评论等。Flask-HTTPAuth 扩展可以很好地对 HTTP 的请求进行认证,不依赖于 Cookie 和 Session。本文主要介绍两种认证的方式:基于密码和基于令牌 (token)。 安装 使用 pip 安装: $ pip install Flask-HTTPAuth 基于密码的认证 为了简化

  • 假设你的 Web 服务对于某些请求比较耗时,而该请求的返回结果在较短的时间内(比如 5 分钟内)都是足够有效的,这时你能想到什么方法去改善这种状况呢?缓存?对,至少这是一种提高性能的最简单的方法。 Flask 本身不提供缓存功能,但是作为 Flask 核心的 Werkzeug 框架则提供了一个简单的缓存对象 SimpleCache,它将缓存项存放在 Python 解释器的内存中。使用 Simple

  • MongoDB 是一个文档型数据库,是 NoSQL (not only SQL) 的一种,具有灵活、易扩展等诸多优点,受到许多开发者的青睐。MongoEngine 是一个用来操作 MongoDB 的 ORM 框架,如果你不知道什么是 ORM,可以参考 Flask-SQLAlchemy 一节。在 Flask 中,我们可以直接使用 MongoEngine,也可使用 Flask-MongoEngine

  • ORM 框架 Web 开发中,一个重要的组成部分便是数据库了。Web 程序中最常用的莫过于关系型数据库了,也称 SQL 数据库。另外,文档数据库(如 mongodb)、键值对数据库(如 redis)近几年也逐渐在 web 开发中流行起来,我们习惯把这两种数据库称为 NoSQL 数据库。 大多数的关系型数据库引擎(比如 MySQL、Postgres 和 SQLite)都有对应的 Python 包。在

  • 给用户发送邮件是 Web 应用中最常见的任务之一,比如用户注册,找回密码等。Python 内置了一个 smtplib 的模块,可以用来发送邮件,这里我们使用 Flask-Mail,是因为它可以和 Flask 集成,让我们更方便地实现此功能。 安装 使用pip安装: $ pip install Flask-Mail 或下载源码安装: $ git clone https://github.com/ma