2015-12-16 14 views
3

我已经有一个使用PostgreSQL作为db的应用程序。我想用Django构建一个服务。尝试过“inspectdb”...但它给人一种期待:在Django中使用inspectdb时出错

Traceback (most recent call last): 
File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
File "/usr/local/lib/python3.4/dist-packages/django/core/management/__init__.py", line 350, in execute_from_command_line 
    utility.execute() 
File "/usr/local/lib/python3.4/dist-packages/django/core/management/__init__.py", line 342, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
File "/usr/local/lib/python3.4/dist-packages/django/core/management/base.py", line 348, in run_from_argv 
    self.execute(*args, **cmd_options) 
File "/usr/local/lib/python3.4/dist-packages/django/core/management/base.py", line 399, in execute 
    output = self.handle(*args, **options) 
File "/usr/local/lib/python3.4/dist-packages/django/core/management/commands/inspectdb.py", line 25, in handle 
    for line in self.handle_inspection(options): 
File "/usr/local/lib/python3.4/dist-packages/django/core/management/commands/inspectdb.py", line 70, in handle_inspection 
    constraints = connection.introspection.get_constraints(cursor, table_name) 
File "/usr/local/lib/python3.4/dist-packages/django/db/backends/postgresql/introspection.py", line 172, in get_constraints 
    "foreign_key": tuple(used_cols[0].split(".", 1)) if kind.lower() == "foreign key" else None, 
IndexError: list index out of range 
+0

嗯,它是一个非常大的数据库?你能设法自己写模型吗? – Kris

+0

嗨克里斯,很多关系都在那里。我认为这将是错误倾向 – gagangupt16

+0

我听到你的声音,但我不会依赖这样的捷径。无论如何,它肯定会犯错 - 我相信你遇到过一个哈哈。我会自己编写模型,编写一个数据库迁移脚本,将数据库中的内容复制到django的体积适中的块中。它的乏味,但我不知道你还能做什么。 – Kris

回答

3

找出问题所在。

显然,db用户没有足够的权限。

+0

这不提供问题的答案。要批评或要求作者澄清,在他们的帖子下留下评论 - 你总是可以评论你自己的帖子,一旦你有足够的[声誉](http://stackoverflow.com/help/whats-reputation),你会能够[评论任何帖子](http://stackoverflow.com/help/privileges/comment)。 - [来自评论](/ review/low-quality-posts/11188005) – 2Dee

+2

我认为这是问题所在。这也是在Django论坛上给出的同样的解释:https://code.djangoproject.com/ticket/25476#comment:25 – gagangupt16