我正在使用SQLAlchemy填充数据库,并且经常需要在处理之前检查数据库中是否存在orm对象。这可能是一个非常规的问题,但是我发现自己经常遇到这种模式:
my_object = session.query(SomeObject).filter(some_fiter).first()
if my_object: # Mostly in databases...
# Juchee it exists
# process
else:
# It does not exist. :-(
my_object = SomeObject()
# process
我在做梦of的是:
if my_object = session.query(someObject).blabla.first():
# if my_object is None this scope is left alone
# if my_object is not None I can work with my_object here...
我知道这种语法是错误的,但我想解释一下此示例的含义。任何等效的方式都会让我高兴。
这种模式是否有优雅的python方法?这个问题不仅针对SQLAlchemy,而且针对每个等效方案。
闭上眼睛打“发表您的问题”,并真诚地等待聪明的人和pythonistas追捕我,询问可能不适当的问题;-)