我在开发中本地运行的Google应用引擎项目中使用Django nonrel项目。我已经创建了自己的模型,这些模型在数据存储区中保存和检索时很好。
我希望使用django.contrib.auth来提供用户功能。我可以使用shell来创建用户,并为这些用户分配一个ID。当我创建一个我自己的模型引用用户时,我必须传入一个用户ID,因为它正确地失败了。
但是,通过gae管理界面检查我无法在数据存储区中看到我通过shell创建的用户的用户模型。我也无法从引用它们的某个模型中检索用户详细信息。对mymodel.user.username的调用不返回任何内容。我也无法使用我设置的用户名和密码登录管理员。我可以看到我在gae管理员应用程序中制作的模型的已保存版本。
我得到的印象是用户正在数据存储区以外的地方创建。有没有什么我需要做的就是使用标准的contrib.auth用户使用django-nonrel和gae?
答案 0 :(得分:6)
我找到了解决方案并认为我会在这里发布,以防将来有人遇到这个问题。
我使用的是Google App Engine启动器。 Django-nonrel对标准Django进行了更改。启动程序使用标准Django,它不包含这些更改。解决方案是使用manage.py runserver,它将查看所有Django非rel更改,包括您自己的模型和Django contrib更改。
答案 1 :(得分:0)
只是添加。
我发现在使用High Replication数据库的Google App Engine应用程序上使用'python manage.py remote createsuperuser'时,更改可能需要一些时间。这意味着您可能需要等待几分钟才能登录。