python - Django cms migration wrong number (0) of constraints -
i've been following django cms installation tutorial, stuck when configuring django cms work django, here:
when omit "cms" installed_apps, migration succeeds , default django page displays in browser.
however, when add "cms" installed_aps , run "python manage.py migrate", migration fails can see in code below.
this fails either empty database, or running after successful migration mentioned above.
i have altered order of installed_apps has no effect.
i've looked @ definition "alter_unique_together" in:
site-packages/django/db/backends/schema.py but can't make sense of failing.
help appreciated, provide details required.
info
project file structure
- natureschoolssite
- manage.py
- media/
- my.cnf
- natureschoolssite/
- models.py
- settings.py
- urls.py
- wsgi.py
- static/
- templates/
- base.html
- template_1.html
- template_2.html
output of "python manage.py migrate"
operations perform: synchronize unmigrated apps: treebeard, sekizai, djangocms_admin_style apply migrations: sessions, admin, sites, auth, menus, contenttypes, cms synchronizing apps without migrations: creating tables... installing custom sql... installing indexes... running migrations: applying contenttypes.0001_initial... ok applying auth.0001_initial... ok applying admin.0001_initial... ok applying sites.0001_initial... ok applying cms.0001_initial... ok applying cms.0002_auto_20140816_1918... ok applying cms.0003_auto_20140926_2347... ok applying cms.0004_auto_20140924_1038... ok applying cms.0005_auto_20140924_1039... ok applying cms.0006_auto_20140924_1110... ok applying cms.0007_auto_20141028_1559... ok applying cms.0008_auto_20150208_2149... ok applying cms.0008_auto_20150121_0059...traceback (most recent call last): file "manage.py", line 10, in <module> execute_from_command_line(sys.argv) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 385, in execute_from_command_line utility.execute() file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 377, in execute self.fetch_command(subcommand).run_from_argv(self.argv) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/core/management/base.py", line 288, in run_from_argv self.execute(*args, **options.__dict__) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/core/management/base.py", line 338, in execute output = self.handle(*args, **options) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/core/management/commands/migrate.py", line 161, in handle executor.migrate(targets, plan, fake=options.get("fake", false)) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/db/migrations/executor.py", line 68, in migrate self.apply_migration(migration, fake=fake) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/db/migrations/executor.py", line 102, in apply_migration migration.apply(project_state, schema_editor) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/db/migrations/migration.py", line 108, in apply operation.database_forwards(self.app_label, schema_editor, project_state, new_state) file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/db/migrations/operations/models.py", line 282, in database_forwards getattr(new_model._meta, self.option_name, set()), file "/home/vagrant/.virtualenvs/natureschools/local/lib/python2.7/site-packages/django/db/backends/schema.py", line 302, in alter_unique_together ", ".join(columns), valueerror: found wrong number (0) of constraints cms_page(publisher_is_draft, application_namespace) output of "pip freeze"
cffi==0.9.2 cmsplugin-filer==0.10.1 cryptography==0.9 django==1.7.7 django-appconf==1.0.1 django-classy-tags==0.5 django-cms==3.1.0 django-filer==0.9.9 django-mptt==0.6.1 django-polymorphic==0.7.1 django-reversion==1.8.5 django-sekizai==0.7 django-treebeard==3.0 djangocms-admin-style==0.2.2 easy-thumbnails==2.2 enum34==1.0.4 html5lib==0.999 idna==1.1 ipaddress==1.0.7 mysql-python==1.2.5 mysqlclient==1.3.6 ndg-httpsclient==0.4.0 pillow==2.8.1 pyasn1==0.1.7 pycparser==2.13 pyopenssl==0.15.1 six==1.3.0 south==1.0.2 unidecode==0.4.17 settings.py
# -*- coding: utf-8 -*- """ django settings natureschoolssite project. more information on file, see https://docs.djangoproject.com/en/1.7/topics/settings/ full list of settings , values, see https://docs.djangoproject.com/en/1.7/ref/settings/ """ # build paths inside project this: os.path.join(base_dir, ...) import os gettext = lambda s: s base_dir = os.path.dirname(os.path.dirname(__file__)) # quick-start development settings - unsuitable production # see https://docs.djangoproject.com/en/1.7/howto/deployment/checklist/ # security warning: keep secret key used in production secret! secret_key = '6x9y_5)$$&$k&so_p5v=if+_4=f!z3%2almz%nha*%*r(vjm#w' # security warning: don't run debug turned on in production! debug = true template_debug = true allowed_hosts = [] # application definition site_id = 1 installed_apps = ( 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.staticfiles', 'cms', 'djangocms_admin_style', 'django.contrib.admin', 'django.contrib.messages', 'django.contrib.sites', 'treebeard', 'menus', 'sekizai', ) middleware_classes = ( 'django.contrib.sessions.middleware.sessionmiddleware', 'django.middleware.csrf.csrfviewmiddleware', 'django.contrib.auth.middleware.authenticationmiddleware', 'django.contrib.messages.middleware.messagemiddleware', 'django.middleware.locale.localemiddleware', 'django.middleware.common.commonmiddleware', 'django.contrib.auth.middleware.sessionauthenticationmiddleware', 'django.middleware.clickjacking.xframeoptionsmiddleware', 'cms.middleware.user.currentusermiddleware', 'cms.middleware.page.currentpagemiddleware', 'cms.middleware.toolbar.toolbarmiddleware', 'cms.middleware.language.languagecookiemiddleware' ) template_context_processors = ( 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', 'django.core.context_processors.i18n', 'django.core.context_processors.request', 'django.core.context_processors.media', 'django.core.context_processors.static', 'sekizai.context_processors.sekizai', 'cms.context_processors.cms_settings', ) root_urlconf = 'natureschoolssite.urls' wsgi_application = 'natureschoolssite.wsgi.application' template_dirs = ( # docs should absolute path: base_dir precisely one. # life wonderful! os.path.join(base_dir, "templates"), ) cms_templates = ( ('template_1.html', 'template one'), ('template_2.html', 'template two'), ) # database # https://docs.djangoproject.com/en/1.7/ref/settings/#databases databases = { 'default': { 'engine': 'django.db.backends.mysql', 'options': { 'read_default_file': '/var/www/natureschools/natureschoolssite/my.cnf', }, } } # internationalization # https://docs.djangoproject.com/en/1.7/topics/i18n/ language_code = 'en-us' languages = [ ('en-us', 'english'), ] time_zone = 'gmt' use_i18n = true use_l10n = true use_tz = true # static files (css, javascript, images) # https://docs.djangoproject.com/en/1.7/howto/static-files/ static_root = os.path.join(base_dir, "static") static_url = "/static/" media_root = os.path.join(base_dir, "media") media_url = "/media/"
i had similar problem zinnia blog app. ended doing created indices migration wants delete directly in postgres shell:
db=> create index on zinnia_entry (slug, creation_date); create index db=> create index on zinnia_entry (status, creation_date, start_publication, end_publication); create index in case might like:
db=> create index on cms_page (publisher_is_draft, application_namespace); hope helps!
Comments
Post a Comment