Kin*_*ngz 24 python sqlalchemy
首先我创建一个会话如下:
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
some_engine = create_engine('my_engine_string')
Session = sessionmaker(bind=some_engine)
session = Session()
Run Code Online (Sandbox Code Playgroud)
然后我将此会话作为参数发送给方法
def example(session):
print("you created a session!")
Run Code Online (Sandbox Code Playgroud)
是否可以some_engine从方法session内部获取的值example?没有实际传递some_engine或my_engine_string到example方法。
如下:
def example(session):
print("you created a session!")
engine = <using session get the value of `some_engine`>
print("the engine is retrieved from session")
Run Code Online (Sandbox Code Playgroud)
Fyn*_*ker 29
Sessions 具有.get_bind()在您的情况下将返回您的Engine实例的方法。
相关摘录自
sqlalchemy docs:返回绑定到的“绑定”
Session。“绑定”通常是 的实例
Engine,除非Session已经明确地直接绑定到Connection。
因此,您的example()函数可以执行以下操作:
def example(session):
print("you created a session!")
engine = session.get_bind()
print("the engine is retrieved from session")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5086 次 |
| 最近记录: |