安装程序在Django-CMS中找不到cms app的模型

时间:2009-10-08 06:50:42

标签: django django-models django-cms

我在我的主机中安装了django-cms。但有一个问题。那是我制作syncdb的时候 我的所有应用都已同步, cms 应用不是。虽然我已经宣布完整 足够的设置。它也没有错误。 谁来帮帮我。非常感谢!

  

(1146,“表'***。cms_page'没有   存在“)

4 个答案:

答案 0 :(得分:1)

在运行syncdb之前,您是否已将其包含在INSTALLED_APPS列表中?

如果您从settings.py文件中发布该片段以及目录结构,也可能会有所帮助。

答案 1 :(得分:0)

我想强调的是,我在制作之前添加了所有应用 执行syncdb。下面是文本文件(我从文件夹示例中复制了 Django-CMS来源)。

TEMPLATE_CONTEXT_PROCESSORS = (
    "django.core.context_processors.auth",
    "django.core.context_processors.i18n",
    "django.core.context_processors.debug",
    "django.core.context_processors.request",
    "django.core.context_processors.media",
    "cms.context_processors.media",
)

INTERNAL_IPS = ('127.0.0.1',)

MIDDLEWARE_CLASSES = (
    'django.contrib.sessions.middleware.SessionMiddleware',
    'django.middleware.locale.LocaleMiddleware',
    'django.middleware.common.CommonMiddleware',
    'django.contrib.auth.middleware.AuthenticationMiddleware',
    'django.middleware.doc.XViewMiddleware',

    #'django.contrib.csrf.middleware.CsrfMiddleware',
    'cms.middleware.user.CurrentUserMiddleware',
    'cms.middleware.page.CurrentPageMiddleware',
    'cms.middleware.multilingual.MultilingualURLMiddleware',
    #'debug_toolbar.middleware.DebugToolbarMiddleware',

)

ROOT_URLCONF = 'projectname.urls'

TEMPLATE_DIRS = (
    os.path.join(PROJECT_DIR, 'templates'),
)

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.admin',
    'django.contrib.sites',
    'tagging',

    'cms',
    'publisher',

    'cms.plugins.text',
    'cms.plugins.picture',
    'cms.plugins.file',
    'cms.plugins.flash',
    'cms.plugins.link',
    'cms.plugins.snippet',
    'cms.plugins.googlemap',
    'cms.plugins.teaser',
    'cms.plugins.video',
    'cms.plugins.twitter',
    'mptt',
    'reversion',

    'south',

    'projectname.sampleapp',

)

LANGUAGE_CODE = "en"

gettext = lambda s: s

LANGUAGES = (
    ('en', gettext('English')),
)

CMS_LANGUAGE_CONF = {
    'en':['en'],
}

CMS_TEMPLATES = (
    ('index.html', gettext('default')),
    ('nice.html', gettext('nice one')),
    ('cool.html', gettext('cool one')),
    ('long-folder-long/long-template-name.html', gettext('long')),
)

CMS_APPLICATIONS_URLS = (
    ('sampleapp.urls', 'Sample application'),
    ('sampleapp.urlstwo', 'Second sample application'),
)

CMS_PLACEHOLDER_CONF = {                        
    'right-column': {
        "plugins": ('FilePlugin', 'FlashPlugin', 'LinkPlugin', 'PicturePlugin', 'TextPlugin', 'SnippetPlugin'),
        "extra_context": {"theme":"16_16"},
        "name":gettext("right column")
    },

    'body': {
        "plugins": ("VideoPlugin", "TextPlugin", ),
        "extra_context": {"theme":"16_5"},
        "name":gettext("body"),
    },
    'fancy-content': {
        "plugins": ('TextPlugin', 'LinkPlugin'),
        "extra_context": {"theme":"16_11"},
        "name":gettext("fancy content"),
    },
}


CMS_NAVIGATION_EXTENDERS = (('projectname.categories.navigation.get_nodes', 'Categories'),)

CMS_SOFTROOT = True
CMS_MODERATOR = True
CMS_PERMISSION = True
CMS_REDIRECTS = True
CMS_SEO_FIELDS = True
CMS_MENU_TITLE_OVERWRITE = True
CMS_HIDE_UNTRANSLATED = False


try:
    from local_settings import *
except ImportError:
    pass

答案 2 :(得分:0)

有好消息。我已经克服了这个错误。实际上,这个错误是因为我使用旧版本的MySQL-Python 。它与Django-CMS 2.0不兼容。

要升级MySQL-Python 1.2.3c1,请访问: http://sourceforge.net/projects/mysql-python/files/ (不要使用easy_install)

谢谢!

答案 3 :(得分:0)

我对这个解决方案的回答是' python manage.py syncdb'没有创建CMS表,所以我不得不使用' python manage.py syncdb --all'然后创建了所有必要的表格。