在postgresql中迁移模型时,postgresql TypeError上的django-cms迁移问题

问题描述 投票:1回答:1

django-cms:当我试图在postgresql中执行python manage.py migrate时,它返回一个TypeError但它没有在sqlite3中给出任何错误。

这是我的全部追溯:

File "manage.py", line 22, in <module>
    execute_from_command_line(sys.argv)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/core/management/__init__.py", line 364, in execute_from_command_line
    utility.execute()
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/core/management/__init__.py", line 356, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/core/management/base.py", line 283, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/core/management/base.py", line 330, in execute
    output = self.handle(*args, **options)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/core/management/commands/migrate.py", line 204, in handle
    fake_initial=fake_initial,
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/db/migrations/executor.py", line 115, in migrate
    state = self._migrate_all_forwards(state, plan, full_plan, fake=fake, fake_initial=fake_initial)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/db/migrations/executor.py", line 145, in _migrate_all_forwards
    state = self.apply_migration(state, migration, fake=fake, fake_initial=fake_initial)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/db/migrations/executor.py", line 244, in apply_migration
    state = migration.apply(state, schema_editor)
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/cms/migrations/0019_set_pagenode.py", line 68, in apply
    connection.introspection.get_table_description(connection.cursor(), 'cms_page')
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/db/backends/postgresql/introspection.py", line 87, in get_table_description
    )) for line in cursor.description
  File "/home/vagrant/.virtualenvs/pmvp/lib/python3.6/site-packages/django/db/backends/postgresql/introspection.py", line 87, in <listcomp>
    )) for line in cursor.description
TypeError: sequence index must be integer, not 'slice'

谁能帮我吗?

django postgresql django-cms
1个回答
4
投票

这是psycopg的兼容性问题。安装旧版本的psycopg2后会出现错误。

pip install psycopg2 == 2.7.7

https://github.com/divio/django-cms/issues/6666

© www.soinside.com 2019 - 2024. All rights reserved.