• Pyramid中如何将models.py文件的内容分布到多个文件中


    默认的Pyramid代码结构中,就只有一个models.py文件,在实际项目中,如果需要对models进行分类,放到不同文件下,应该怎么办?

    我们通过下面的文件结构,将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.pymoo.py 使用meta.py中定义的base

    from .meta import Base

    class Foo(Base):
        pass

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

    from .meta import DBSession
    from .foo import Foo
    from .moo import Moo
  • 相关阅读:
    Access使用记录
    html js 表单提交前检测数据
    asp.net mvc5 action多个参数
    asp.net mvc Areas 母版页动态获取数据进行渲染
    asp.net mvc 自定义全局过滤器 验证用户是否登录
    .net 报错汇总——持续更新
    数据库基础
    Python协程
    Python 线程
    Python 队列
  • 原文地址:https://www.cnblogs.com/JustRun1983/p/2650882.html
Copyright © 2020-2023  润新知