我有一個那些日子。SQLAlchemy過濾器()返回值
我想檢查一個特定的行是否存在於我的數據庫中,如果存在,則返回True。 如果不是,則返回False。
一個簡單的例子:
contact_object = Contact.query.filter(Contact.user_id == user_id and Contact.contact_id == contact_id).first()
這應該只返回1行(其它)。這是我想什麼:
if contact_object:
print "YEY, it was found"
else:
print "Nope, not found"
然而,contact_object總是返回True
,我總是得到一個「YEY,發現」
(注意:user_id
和contact_id
是我以前定義的變量。 )
如何查找未找到的行與找到的行?我閱讀相關文件無濟於事......但我覺得我肯定錯過了一些簡單的東西?
感謝您的幫助。
這當然是奇怪的是,第一個()會給你即使沒有一個真值被發現...但是你可能有興趣使用.one()來代替,它需要返回一個且只有一行。如果沒有發現,它會引發NoResultFound異常。 –