2014-09-01 93 views
1

試圖讓我的第二個Django應用程序:一個基於Django Oscar的商店。我正在關注RTFD的教程。我在這個階段有一個問題http://django-oscar.readthedocs.org/en/latest/internals/getting_started.html#creating-product-classes-and-fulfillment-partnersDjango Oscar「ProgrammingError at/admin /」MySQL表

每個奧斯卡部署都需要至少一個產品類別和一個配送夥伴 。這些不是自動創建的,因爲它們是 高度特定於您要構建的商店。設置 的最快捷方式是登錄到Django管理界面 localhost:8000/admin /並在其中創建實例。對於 部署設置,我們建議將它們創建爲數據遷移。

然而,當我嘗試登錄到產生錯誤的管理是:

ProgrammingError at /admin/ 

(1146, "Table 'winestoreoscar.django_admin_log' doesn't exist") 
.... 
Error during template rendering 

In template /home/david/.virtualenvs/winestoreoscar/local/lib/python2.7/site-packages/django/contrib/admin/templates/admin/index.html, error at line 65 
1146 

這個模板在錯誤顯示這一行強調:

<ul class="actionlist"> 
**65 {% for entry in admin_log %}** 
66 <li class="{% if entry.is_addition %}addlink{% endif %}{% if entry.is_change %}changelink{% endif %}{% if entry.is_deletion %}deletelink{% endif %}"> 

所以它看起來像我錯過了一張桌子。我使用MySQL作爲數據庫。在MySQL提示我嘗試了明顯..

mysql> CREATE TABLE winestoreoscar.django_admin_log; 

,但得到的錯誤消息...

ERROR 1113 (42000): A table must have at least 1 column 

我又試圖在管理模板循環去除整個和admin渲染成功,但試圖保存導致以前的錯誤。

現在我卡住了。非常感謝任何幫助。

編輯: 下面是從底層目錄樹(想 - 我需要一個admin.py ..?):

├── manage.py 
└── oscarwinestore 
    ├── __init__.py 
    ├── __init__.pyc 
    ├── settings.py 
    ├── settings.py~ 
    ├── settings.pyc 
    ├── urls.py 
    ├── urls.py~ 
    ├── urls.pyc 
    ├── wsgi.py 
    └── wsgi.pyc 

我urls.py是

from django.conf.urls import include, url 
from oscar.app import application 
from django.contrib import admin 
admin.autodiscover() 

urlpatterns = [ 
    url(r'^i18n/', include('django.conf.urls.i18n')), 

    # The Django admin is not officially supported; expect breakage. 
    # Nonetheless, it's often useful for debugging. 
    url(r'^admin/', include(admin.site.urls)), 

    url(r'', include(application.urls)), 
] 

回答

1

您需要創建具有syncdbmigrate表,按the docs

$ python manage.py syncdb --noinput 
$ python manage.py migrate 

你做到了嗎?

+0

是的。我已經做到了。 – 2014-09-01 14:31:18

+0

這應該是一個評論,而不是一個答案。 – levi 2014-09-01 14:38:03

+0

哦。即使它可能是一個評論..!那是對的。我以前運行過syn​​cdb並進行了遷移。然後,我從django.contrib import admin和admin.autodiscover()添加到urls.py,因爲它們(出於某種奇怪的原因)在構建中丟失。運行同步/再次遷移修復它。你們是最棒的。問題解決了。 – 2014-09-01 14:44:36

相關問題