【问题标题】:Unable to query with GQL an existing Model无法使用 GQL 查询现有模型
【发布时间】:2015-11-01 12:05:05
【问题描述】:

我有一个名为 DB.py 的文件,其类如下:

class ChannelToUserTable(ndb.Model):
    user_id = ndb.KeyProperty(kind=UsersTable)
    channel = ndb.KeyProperty(kind=ChannelsTable)

在同一个文件中,我有以下用于 gql 查询的类:

class Query(object):
    def __init__(self, query_str):
        self.__query = ndb.gql(query_str)

    def results(self):
        return self.__query

当我尝试执行以下查询时:

DB.Query('''SELECT * FROM ChannelToUserTable WHERE ChannelToUserTable.channel=''' + ch_id).results()

我收到以下错误:

TypeError: Model ChannelToUserTable has no property named u'ChannelToUserTable'

但是当尝试在没有 WHERE 条件的情况下执行相同的查询时 - 我得到了一个完全正确的结果。

有什么想法吗?

谢谢,

【问题讨论】:

    标签: google-app-engine google-cloud-datastore app-engine-ndb gql


    【解决方案1】:

    我认为您的查询应该包含

    ...WHERE 频道=...

    而不是

    ...WHERE ChannelToUserTable.channel=...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-02-08
      • 2022-01-07
      • 2011-04-08
      • 2010-12-20
      • 1970-01-01
      • 1970-01-01
      • 2021-08-21
      相关资源
      最近更新 更多