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进行插值非常方便,可以直接使用scipy中的interpolate import numpy as np x1 = np.linspace(1, 4096, 1024...

数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法

数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法

Numpy提供了几种数据保存的方法。 以3*4数组a为例: 1. a.tofile("filename.bin") 这种方法只能保存为二进制文件,且不能保存当前数据的行列信息,文件后缀不...

python 使用re.search()筛选后 选取部分结果的方法

python 使用re.search()筛选后 选取部分结果的方法

使用group()方法 b = 'hello good fine' re.search(r'^hello\s(.*)\sfine',b).group() group() 会...

用实例说明python的*args和**kwargs用法

先来看一个例子:复制代码 代码如下:>>> def foo(*args, **kwargs):    print 'args =', ar...

python 实现快速生成连续、随机字母列表

0.摘要 本文介绍了生成连续和随机字母表的方法,用于快速生成大量字母数据。 主要使用chr()函数,将数字通过ASCII表转换为相应字母。 1.chr() 函数 chr() 用一个范围在...