无法使用有效字段获取mongodb对象

时间:2013-10-31 05:10:07

标签: mongodb python-2.7 mongoengine flask-mongoengine

我正在使用Mongoengine。 我做的时候:

>>> Grant.objects().first().client_id

结果与预期一致。

ObjectId('526fd0da82353536892f22ae')

但是,当我根据client_id进行搜索时,

>>> Grant.objects(client_id="526fd0da82353536892f22ae").first()

我得到一个InvalidQueryError:

  

InvalidQueryError:无法解析字段“client_id”   这是我的Grant模型的样子:

class Grant(db.Document):
    #user_id = db.StringField()
    user = db.ReferenceField(User)
    client_id = db.StringField()
    client = db.ReferenceField(Client)
    code = db.StringField()
    redirect_uri = db.StringField()
    expires = db.DateTimeField()
    scopes = db.ListField()

    #for soft-deleting the grant
    is_deleted = db.BooleanField(default=False)

    @property
    def user_id(self):
        return self.user.id

    @property
    def client_id(self):
        return self.client.id

    def delete(self):
        self.is_deleted = True

有人可以查看此代码并指出问题吗?

1 个答案:

答案 0 :(得分:0)

您是否尝试使用它:

Grant.objects(client_id=ObjectId("526fd0da82353536892f22ae")).first()