Python 中多文件模型的建立
文章目录
Python 中使用 SQLAlchemy
或者 Ponyorm
时可能会遇到一个问题,它们的教程中,所有的模型全都定义在同一个文件中,但是在实际使用中,我习惯于将每个类放在单独的文件中,但是由于都要引用同一个变量,导致一开始无法进行下去,总是提示我某某文件未初始化之类的。
一开始以为这是 SQLAlchemy 的问题,用着很糟心,就换到了 Ponyorm,但是也有同样的问题。到 Stack Overflow 搜索之后才知道,要想使用同一个变量,必须要合理引用。
假设我们的模型是这样的路径:
|
|
那么为了共享同一个变量,需要添加一个文件,暂且命名为 Base.py,这里要初始化这个变量,比如说对于 SQLAlchemy,它是一个 declarative_base
,就要这样写:
|
|
在其他文件中引用这个 Base 变量,例如 Student 中:
|
|
其他模型文件中也是一样,都要使用 from .Base import Base
。最后,需要为 model
包添加 __init__.py
:
|
|
文章作者 frank
上次更新 2021-03-21