什么是检查sqlalchemy,python中是否存在名称的有效方法

时间:2013-10-28 10:10:58

标签: python sqlalchemy

目前我正在使用for循环检查记录是否存在,

def IsUserPrivileged(name):
  namequery = Ops.query.all()
  for names in namequery:
    if name == namequery.name:
      return True
    else:
      return False

因此,具有Id字段和名称字段的操作数据库。我正在寻找一些东西(我知道这是错误的语法):

def IsUserPrivileged(name)
  namequery = Ops.query.filter_by(name =name).first()
  if namequery:
    return True
  else:
    return False

但这会引发错误。

谢谢:)

1 个答案:

答案 0 :(得分:2)

你快到了那里:

def is_user_privileged(name):
    namequery = Ops.query.filter(name==name)
    if namequery.count():
       return True
    else:
       return False

但您可以进一步优化您的功能:

def is_user_privileged(name):
    namequery = Ops.query.filter(name==name)
    return namequery.count()

在Python中,一般的做法是对类使用InitialCaps,对于带有下划线的小写函数。有关详细信息,请参阅python style guide,其Python增强建议(PEP)编号也称为PEP8。