您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python中缺少动态查找器和方法

Python中缺少动态查找器和方法

在这里实际上没有必要使用GQL-这只会使事情变得复杂。这是一个简单的实现:

class FindableModel(db.Model):
  def __getattr__(self, name):
    if not name.startswith("find_by_"):
      raise AttributeError(name)
    field = name[len("find_by_"):]
    return lambda value: self.all().filter(field, value)

注意,它返回一个查询对象,您可以调用.get()、. fetch()等。这是更通用的方法,但是如果您愿意的话,当然可以使其仅返回单个实体。

python 2022/1/1 18:40:23 有335人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶