Skip to content

Redis数据库

taowen edited this page Oct 16, 2012 · 1 revision

做为对关系型数据库的补充,Veil框架还支持对Redis数据库的访问。与PostgreSQL类似,Veil对Redis的支持也分为客户端和服务器两部分。

客户端使用

demo/demo.py

from __future__ import unicode_literals, print_function, division
from veil.frontend.cli import *
from veil.backend.redis.client import *

redis = register_redis('demo')

@script
def say_hello():
    print(redis().get('some_key'))

使用的方式与关系型数据库很类似。都是先声明一个名字叫demo的数据库,然后返回一个函数。在say_hello被调用的时候执行之前返回的函数,获得对redis的引用。然后调用get方法使用redis的api。当然,为了连接到redis数据库,我们还需要对访问参数进行一些配置:

demo/__init__.py

import veil.component

with veil.component.init_component(__name__):
    def init():
        from veil.environment.setting import add_settings
        from veil.backend.redis.server import redis_settings

        add_settings(redis_settings(
            'demo', bind='localhost', port=6379))

服务器

需要添加redis的安装程序

__veil__.py

from veil.backend.shell import *

PROGRAM_INSTALLERS = {
    'demo_redis': lambda: shell_execute('veil backend redis server install demo')
}

然后在安装之后,执行sudo veil up的时候,如果是开发环境,则会把demo_redis进程启动起来。

Clone this wiki locally