Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Google App Engine中创建用户并以简单的方式进行迁移_Python_Google App Engine_Google Cloud Datastore - Fatal编程技术网

Python 在Google App Engine中创建用户并以简单的方式进行迁移

Python 在Google App Engine中创建用户并以简单的方式进行迁移,python,google-app-engine,google-cloud-datastore,Python,Google App Engine,Google Cloud Datastore,我对GAE有点陌生,所以我想问,如何为像博客这样琐碎的东西创建用户模型 到目前为止,我只知道这些: class User(db.Model): # Todo create a user model, that works with your login page username = db.UserProperty() password = db.StringProperty() 但这看起来很原始。如何在谷歌应用引擎中创建一个用户,正如在创建独特性是一个重要因素的领域的最佳实

我对GAE有点陌生,所以我想问,如何为像博客这样琐碎的东西创建用户模型

到目前为止,我只知道这些:

class User(db.Model):  # Todo create a user model, that works with your login page
    username = db.UserProperty()
    password = db.StringProperty()
但这看起来很原始。如何在谷歌应用引擎中创建一个用户,正如在创建独特性是一个重要因素的领域的最佳实践中一样。 另外,既然谷歌数据存储中不允许链接,您将如何将用户链接到博客文章。 最后,是否有一个应用程序可以管理您的所有迁移?像南部的盖伊?似乎有一种迁移的方法,但它涉及到很多问题


另外,我来自django背景,因此我发现所有这些都有点违反直觉,因为这不是一个关系数据库。

您的
用户
类现在还可以,您可以在开发过程中根据需要向模型添加字段。但是您应该使用
ndb
而不是
db
<代码>ndb处理更多功能(如自动缓存)。你可以找到更多的细节

如果您想了解更高级的用户或数据存储模型,可以查看
gae样板文件
,它已经可以处理用户登录和注册(甚至可以从facebook/twitter/…)。自述文件有很好的文档记录:

您可以通过使用
KeyProperty()
或在创建父实体时设置父实体,在模型中实现某种关系。例如:

class BlogPost(ndb.Model):
    title = ndb.StringProperty()
    content = ndb.TextProperty()
    timestamp = ndb.DateTimeProperty(auto_add_now=True)

# Then you can specify a parent in the constructor (where user is a User entity)
blog_post = BlogPost(parent=user)
blog_post.title = 'Post title'
blog_post.content = 'Post content'
blog_post.put()

然后使用来检索用户发布的所有博客文章。

您是否介意添加一些代码,说明如何在此构造函数中添加父级?这将使答案更加全面。抱歉再次询问。所有代码都在这里,
user
是您可以从查询中检索的用户实体。如果您不知道如何做,我建议您阅读有关ndb查询的文档。