Pyramid将models.py文件的内容分布到多个文件的方法

yipeiwu_com6年前Python基础

我们通过下面的文件结构,将models.py改成一个package.

复制代码 代码如下:

myapp
    __init__.py
    scripts
        __init__.py
        initialize_db.py
    models
        __init__.py
        meta.py
        foo.py
        moo.py

上面的 meta.py, 在代码中定义一个其它model文件共享Base和DBSession.

复制代码 代码如下:

Base = declarative_base()
DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension))

foo.py和moo.py就是具体的model定义
foo.py 和moo.py 使用meta.py中定义的base

为了保证定义的model能够在程序中被启用,在models/__init__.py中引入它们:

复制代码 代码如下:

from .meta import DBSession
from .foo import Foo
from .moo import Moo

相关文章

详解python里使用正则表达式的分组命名方式

详解python里使用正则表达式的分组命名方式 分组匹配的模式,可以通过groups()来全部访问匹配的元组,也可以通过group()函数来按分组方式来访问,但是这里只能通过数字索引来访...

Python 如何提高元组的可读性

这篇文章主要介绍了Python 如何提高元组的可读性,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 假设学生系统中数据为固定格式:(名...

python验证码识别教程之利用投影法、连通域法分割图片

python验证码识别教程之利用投影法、连通域法分割图片

前言 今天这篇文章主要记录一下如何切分验证码,用到的主要库就是Pillow和Linux下的图像处理工具GIMP。首先假设一个固定位置和宽度、无粘连、无干扰的例子学习一下如何使用Pillo...

在OpenCV里使用Camshift算法的实现

在OpenCV里使用Camshift算法的实现

前面学习过Meanshift算法,在观察这个结果标记时,会发现有这样一个问题,如下图: 汽车比较远时,用一个很小的窗口就可以把它框住,这是符合近大远小的投影原理,当比较近的时候如下:...

python获取list下标及其值的简单方法

当在python中遍历一个序列时,我们通常采用如下的方法: for item in sequence: process(item) 如果要取到某个item的位置,可以...