SQLAlchemy文件组织

Seb*_*eri 5 python sqlalchemy

有没有人对组织基于sqlalchemy的项目有任何见解?我有许多带有外键和关系的表和类。每个人在分离类,表和映射器方面都在做什么?我对该框架比较陌生,因此不胜感激。

例:

classA.py # table definition and class A definition
classB.py # table definition and class B definition

### model.py
import classA,classB
map(classA.classA,clasSA.table)
map(classB.classB,clasSB.table)
Run Code Online (Sandbox Code Playgroud)

在classA和classB中包含映射器,但在建立关系时会出现交叉导入问题。也许我缺少了一些东西:)

Den*_*ach 1

SQLAlchemy 设计中有两个功能可以在定义关系时避免交叉导入:

  1. backref的参数relation()允许您定义向后关系。
  2. 使用字符串(模型类及其字段名称)。不幸的是,这仅适用于声明性,这不是您的情况。

有关详细信息,请参阅教程中的本章。