0

これが私がしたことです:

> python manage.py createsuperuser
Username (Leave blank to use 'joe'): admin
E-mail address: random_email@yahoo.com
Password:
Password (again):
Superuser created successfully.
Exception AttributeError: "'NoneType' object has no attribute 'mkstemp'" in <bound method DatastoreFileStub.__del__ of <google.appengine.api.datastore_file_stub
.DatastoreFileStub object at 0x02928470>> ignored

> python manage.py shell
[1]: from django.contrib.auth.models import User
[2]: users = User.objects.all()
[3]: users
[3]: [<User: admin>]
[4]: users[0].set_password('password')
[5]: users[0].save()
[6]: exit()
Exeption AttributeError: "'NoneType' object has no attribute 'mkstemp'" in <bound method DatastoreFileStub.__del__ of <google.appengine.api.datastore_file_stub
tastoreFileStub object at 0x028D9490>> ignored

> python manage.py syncbd
Creating tables ...
Installing custom SQL ...
Installing indexes ...
No fixtures found.
Exception AttributeError: "'NoneType' object has no attribute 'mkstemp'" in <bound method DatastoreFileStub.__del__ of <google.appengine.api.datastore_file_stub
.DatastoreFileStub object at 0x02A83310>> ignored

> python manage.py validate
0 errors found
Exception AttributeError: "'NoneType' object has no attribute 'mkstemp'" in <bound method DatastoreFileStub.__del__ of <google.appengine.api.datastore_file_stub
.DatastoreFileStub object at 0x028A3310>> ignored

ログインしようとすると:http://127.0.0.1:8000 / admin /、ユーザー/パスの組み合わせが間違っていると表示され続けます。管理ページを有効にするために必要な特定のファイルはありますか?

4

3 に答える 3

1

agfが彼のコメントで言ったことのように、それはdb設定の問題のようです。モデルで定義されているものとデータベースで定義されているものには違いがあります。

./manage.py syncdb実行したかどうか、または実行するとどうなるかを確認します./manage.py validateか?

コメントに基づく更新

AppEngineはDjangoモデルをサポートしていません。AppEngineのdb.modelsまたはndb.modelsAPIを使用してモデルを作成する必要があります。

このリンクを参照してください:データはローカルホストに保存されますが、gaeデータストアには保存されませんか?

于 2012-05-01T13:24:17.453 に答える
0

1.6.4 SDKを使用している場合、データベースがexit()に保存されないというバグがあります。

これは1.6.5で修正されていると思います。

于 2012-05-01T01:59:41.967 に答える
0

さらに、全体が評価およびキャッシュされるusers[0]ことはありません。QuerySet全体を評価するか、いくつかの変数QuerySetに割り当てusers[0]て、変数を使用する必要があります。

>>> users[0] is users[0]
False
>>> user = users[0]
>>> user is user
True
>>> len(users); users[0] is users[0]
True

リーダー难当啊〜

于 2012-05-01T04:50:15.530 に答える