将sqlalchemy与cherrypy结合使用

cp_sqlalchem的Python项目详细描述


cherrypy sqlalchemy使在cherrypy中使用sqlalchemy变得很容易 应用程序。

学分

这个包主要是从Sylvain’s SQLAlchemy recipe创建的。

基本用法

cherrypy sqlalchemy有两个元素

  1. A CherryPy tool that will create a session for use with each request.
  2. A CherryPy plugin that can maintains information about the database and binds the session to the specific DB.

下面是一个连接到sqlite数据库的示例:

import cherrypy

from app import Root
from app.models import ORMBase
from cp_sqlalchemy import SQLAlchemyTool, SQLAlchemyPlugin


def run():
    cherrypy.tools.db = SQLAlchemyTool()
    cherrypy.tree.mount(Root(), '/', {
        '/': {
            'tools.db.on': True
        }
    })

    SQLAlchemyPlugin(
        cherrypy.engine, ORMBase, 'sqlite:////path/to/file.db'
    )

    cherrypy.engine.start()
    cherrypy.engine.block()

值得注意的一点是我们进口的奥姆巴是 sqlalchemy.ext.declarative.declarative_base()用于 创建模型。

从那里,每个请求都可以访问cherrypy.request.db, 这是一个sqlalchemy会话的实例。

在源代码中有一个更完整的example.py

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java IntelliJ找不到依赖项选项卡   java向字符串数组string[]添加元素并在Junit中测试结果   如何在eclipse中获取活动java项目的名称   如何使用java在mysql中插入时间   java ArrayList更新了插入一行,但Jtable仍然没有刷新   如何在JavaSwing中命名坐标(点)   java Matcher/模式不打印   java错误地设置了arraylist   使用UsernamePasswordCredential提供程序的java列表Azure AD   java在HTTP请求中设置UTC时间   未加载事件:jquery完整日历Java集成   java Maven插件依赖项无法从内部repo解析依赖项   Maven更新重置Java版本   java如何向中添加图片。带有Apache POI XWPF的docx,但不指定其大小   Java最大函数递归