mic*_*ael 2 python sqlalchemy flask flask-sqlalchemy
所以,我想提出新瓶的应用程序,甚至在其他项目中发现db.Column并Column可互换使用.那你什么时候用另一个呢?
id = db.Column(Integer(), primary_key=True)
Run Code Online (Sandbox Code Playgroud)
VS
id = Column(Integer(), primary_key=True)
Run Code Online (Sandbox Code Playgroud)
这似乎是一种便利; 没有区别.
>>> from flask_sqlalchemy import SQLAlchemy
>>> db = SQLAlchemy()
>>> from sqlalchemy import Column
>>> db.Column is Column
True
Run Code Online (Sandbox Code Playgroud)
在该类的docstring中,SQLAlchemy您可能会看到以下注释:
此类还提供对
sqlalchemy和sqlalchemy.orm模块中所有SQLAlchemy函数和类的访问.
名称由一个辅助函数提供的_include_sqlalchemy是那些获得真实称为SQLAlchemy的初始化.一个值得怀疑的设计选择,或许,除了减少模块顶部的import语句数量之外,没有理由忽略Python#13的禅宗?