2015-04-07 103 views
1

我是Django和DjangoCMS的新手。我最近安装了DjangoCMS,并希望按照教程Tutorial 1Introduction to Plugins来编写我自己的应用程序。如何将应用程序添加到Django CMS 3.0.12并迁移?

一些研究和测试后,我发现,当我尝试运行任何的命令:

python manage.py migrate 

or 

python manage.py makemigrations polls 

我最终运行到以下错误:

Traceback (most recent call last): 
    File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 338, in execute_from_command_line 
    utility.execute() 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 312, in execute 
    django.setup() 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/django/__init__.py", line 18, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/django/apps/registry.py", line 108, in populate 
    app_config.import_models(all_models) 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/django/apps/config.py", line 198, in import_models 
    self.models_module = import_module(models_module_name) 
    File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/djangocms_text_ckeditor/models.py", line 14, in <module> 
    from cms.models import CMSPlugin 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/cms/models/__init__.py", line 3, in <module> 
    from .pagemodel import * # nopyflakes 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/cms/models/pagemodel.py", line 20, in <module> 
    from cms.models.placeholdermodel import Placeholder 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/cms/models/placeholdermodel.py", line 16, in <module> 
    from cms.utils.placeholder import PlaceholderNoAction, get_placeholder_conf 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/cms/utils/placeholder.py", line 8, in <module> 
    from sekizai.helpers import get_varname 
    File "/home/username/folder/DjangoCMS/env/local/lib/python2.7/site-packages/sekizai/helpers.py", line 3, in <module> 
    from django.template import VariableNode, Variable 
ImportError: cannot import name VariableNode 

我认为这特定于我在settings.py文件中设置的已安装应用程序,因为我一直在处理这个错误,我发现大多数在INSTALLED_APPS中为DjangoCMS设置的应用程序实际上并不需要为我安装在本地运行网站。

INSTALLED_APPS = (
    'djangocms_admin_style', 
    'djangocms_text_ckeditor', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.admin', 
    'django.contrib.sites', 
    'django.contrib.sitemaps', 
    'django.contrib.staticfiles', 
    'django.contrib.messages', 
    'djangocms_style', 
    'djangocms_column', 
    'djangocms_file', 
    'djangocms_flash', 
    'djangocms_googlemap', 
    'djangocms_inherit', 
    'djangocms_link', 
    'djangocms_picture', 
    'djangocms_teaser', 
    'djangocms_video', 
    'cms', 
    'menus', 
    'sekizai', 
    'reversion', 
    'mptt', 
    'south', 
    'mywebsite', 
    'polls' 
) 

望着堆我觉得这个特别的错误是关系到sekizai应用程序,但是当我继续前进,PIP安装Django-sekizai我仍然得到同样的错误,当我尝试迁移。

+0

它看起来像sekizai 0.8作品与包含VariableNode不过在Django 1.8不Django的1.7。你使用Django 1.8吗? –

+0

我正在运行与dekizai 0.8.1相同的问题和Django 1.8,但与Django 1.7的迁移过程是好的(保留所有其他依赖版本) –

+0

我的版本是:1.8 –

回答

1

所以我发现了这个问题。 DjangoCMS只在使用Django版本1.6时才能正常工作,并且依赖于南迁移包/ app。

为了解决这个问题只需做到以下几点:

pip install django==1.6 

还要确保使用正确的教程,你可以通过查看URL检查。

东西到目前为止,我已经注意到,makemigrations不存在的Django 1.6 :(

+1

Django == 1.7没关系,你不需要将你的django版本降级到1.6 –

0

我试图与Django的== 1.9.7,如果升级Django的sekizai到0.9.0版本,然后错误自败。 所以只要升级找你的Django sekizai到最新版本找你的Django版本。

pip install django-sekizai==0.9.0 
相关问题