擅长:python、mysql、java
<p>这是不正确的。假设您想在找到独立于哪个过滤器找到它的对象之后<code>update_the_obj(obj)</code>,那么末尾的<code>else</code>子句对内部过滤器是隐藏的。在</p>
<p>你可以试试:</p>
<pre><code>obj = None
try:
obj = session.query(model).filter_by(field_a).one()
except NoObjFound:
try:
obj = session.query(model).filter_by(field_b).one()
except NoObjFound:
insert_into_db(brand_new_obj)
if obj is not None:
update_the_obj(obj)
</code></pre>