2012-09-18 68 views
1

我試圖使用djangoappengine實現Django的民意調查應用程序教程。嘗試與Djangoappengine的Django教程

我採取的步驟:
1)將測試應用程序複製到工作區文件夾中。

2)在'test-app'文件夾中複製django-toolbox,dbindexer,django,djangoappengine,autoload,按照網站http://www.allbuttonspressed.com/projects/djangoappengine的指示。

3)在eclipse中以PyDev Google App Engine Project開始一個新項目,並將test-app作爲工作文件夾。

4)現在我使用終端

$蟒蛇manage.py部署

上了車x.appspot.com的 「這作品」 頁面部署在GAE的應用程序。

5)現在我試圖做一個民意測驗應用在本教程針對

蟒蛇manage.py的startApp投票

文件夾 '投票' 用四個文件

創建6)我編輯了投票的model.py文件並添加了代碼,如教程-1 中提到的那樣然後我運行命令 -

$蟒蛇manage.py執行syncdb

這表明沒有錯誤,但並沒有創造民調的一個新表。 我在settings.py的'Installed_Apps'下添加了'民意調查'
我認爲問題出在數據庫聲明中,它是dbindexer而不是django.db.backends.sqlite3,但我不確定。

也有錯誤,當我在外殼

>>> from django.utils import timezone 
Traceback (most recent call last): 
File "<console>", line 1, in <module> 
ImportError: cannot import name timezone 

我有更多的疑問,但我會提到它上面已經得到解決後,運行此。

+0

我有原因對於時區問題(時區需要django> 1.3.1)。請解決syncdb問題 – Ashish

+0

我已經更新了我的答案。 –

+0

好吧,我明白了。它創建了表格,但由於它沒有在管理員中顯示,所以我遇到了問題。然後我意識到我沒有在admins.py中註冊投票。 – Ashish

回答

0

Django教程是爲最新版本的django編寫的。據我記得,時區約1.3添加到django.utils?你可以檢查你有什麼版本的Django?目前的版本是1.41。

+0

我正在使用Django 1.41 – Ashish

+0

你可以嘗試(檢查Django被python拾起): import django(enter) print django.get_version()(enter) – Owen

+0

它顯示1.3.1,但我安裝了Django 1.4.1我想這是因爲GAE SDK的Django 1.3捆綁了它。 – Ashish

0

根據此頁面App Engine的第三方支持在Python 2.7

https://developers.google.com/appengine/docs/python/tools/libraries27

應用程序引擎只支持這些版本:

「1.2」

「1.3」

「latest」

所以我不認爲你可以使用1.41。

有Django上使用這裏進一步指出:

https://developers.google.com/appengine/docs/python/tools/libraries27#django

爲了與NDB存儲API使用Django,添加 'google.appengine.ext.ndb.django_middleware.NdbDjangoMiddleware',到您的Django settings.py文件中的MIDDLEWARE_CLASSES條目。

你有沒有在你的app.yaml這樣的條目?

libraries: 
- name: django 
    version: "1.3" 

你有沒有做過?

使用Django與NDB存儲API,添加 'google.appengine.ext.ndb.django_middleware.NdbDjangoMiddleware',在你的Django的MIDDLEWARE_CLASSES進入的settings.py

+0

函數庫: - 名稱:django 版本:「latest」 – Ashish

+0

我相信仍然只會給你1.3,因爲這是GAE支持的「最新」。 –

+0

版本說明確認,1.3最高。 http://code.google.com/p/googleappengine/wiki/SdkReleaseNotes#Version_1.6.2_-_January_31,_2012「Django 1.3現已在Python 2.7運行時中提供。」 –