3

假设我们有以下模型。

    class User(db.Model):
        username=db.StringProperty()
        avatar=db.ReferenceProperty()

    class User(db.Model):
        username=db.StringProperty()
        avatar=db.StringProperty()

    class Avatar(db.Model):
        avatarLink=db.StringProperty

    class UserDataHandler:
        def adduserdata():
            userid="uniqueid1"
            avatarid="uniqueid2"
            user=User(key_name=userid)
            avatar=Avatar(key_name=user)
            avatar.avatar="http://zy.jpg"
            avatar.put()
            user.username="username"
            user.avatar=avatar
            #user.avatar=avatarid

以上两种模型是使用ReferenceProperty模型还是存储头像的key_name并从key中获取头像更好。更好的意思是哪一个使用最少的数据库查询。

4

1 回答 1

3

两种方法都会产生相同数量的查询;使用 aReferenceProperty只是您必须编写的更少代码(因此通常被认为是正确的方法)。

于 2012-06-19T04:21:31.147 回答