5

在 Python 2.7 和 Django 1.4 中使用 Window 7 64Bit。

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

C:\Django-1.4\django\bin\cms2>manage.py syncdb
Creating tables ...
Installing custom SQL ...
Installing indexes ...
Traceback (most recent call last):
  File "C:\Django-1.4\django\bin\cms2\manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
443, in execute_from_command_line
    utility.execute()
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
382, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "C:\Python27\lib\site-packages\django\core\management\base.py", line 196,
 in run_from_argv
    self.execute(*args, **options.__dict__)
  File "C:\Python27\lib\site-packages\django\core\management\base.py", line 232,
 in execute
    output = self.handle(*args, **options)
  File "C:\Python27\lib\site-packages\django\core\management\base.py", line 371,
 in handle
    return self.handle_noargs(**options)
  File "C:\Python27\lib\site-packages\django\core\management\commands\syncdb.py"
, line 164, in handle_noargs
    call_command('loaddata', 'initial_data', verbosity=verbosity, database=db)
  File "C:\Python27\lib\site-packages\django\core\management\__init__.py", line
150, in call_command
    return klass.execute(*args, **defaults)
  File "C:\Python27\lib\site-packages\django\core\management\base.py", line 232,
 in execute
    output = self.handle(*args, **options)
  File "C:\Python27\lib\site-packages\django\core\management\commands\loaddata.p
y", line 239, in handle
    (full_path, ''.join(traceback.format_exception(sys.exc_type,
UnboundLocalError: local variable 'full_path' referenced before assignment

错误

UnboundLocalError: local variable 'full_path' referenced before assignment

我自己安装了它,但它给了我错误。它有什么问题?我试图谷歌,但没有出现。

4

6 回答 6

10

我也有这个问题。这是由(其他人)将其添加到我的settings.py

SERIALIZATION_MODULES = {
    'json': 'wadofstuff.django.serializers.json'
}

而且我没有安装那个东西。您可以使用以下方式安装它:

pip install wadofstuff-django-serializers

我想其他丢失的软件也会发生类似的错误。

于 2012-09-20T09:53:05.367 回答
2

这是 Django 吃掉你原来的异常,做错事,给你一个完全没有信息的错误的又一个例子。

查看逻辑流程,您应该能够绕过此错误并查看如果您这样做的实际错误是什么

manage.py syncdb --traceback

或者可能

manage.py --traceback syncdb

那应该回答这个特定的问题,并告诉你 Django 内部出了什么问题。找到后,如果您仍然无法弄清楚出了什么问题,我建议您在新问题中发布该回溯。

于 2012-09-24T05:40:11.297 回答
0

如果您查看 loaddata.py 的代码,您可以看到在第 163 行为 full_path 分配值之前必须发生异常,这使得异常句柄引发了另一个异常,从而掩盖了实际错误。我的建议是在 handle() 函数的开头添加“full_path = ''”,这样你至少可以看到真正的错误。

于 2012-09-24T01:39:58.937 回答
0

这似乎是 Django 1.4.1 中的一个漏洞。我们没有足够的信息来告诉你究竟是什么导致你掉进了这个洞,但看起来最新的 git 版本没有这个洞。我认为如果您更新到最新的 repo 代码,您将不会出现此错误。

我认为您还会发现其他东西正在引发错误以使该错误成为可能。

于 2012-09-19T17:50:48.137 回答
0

问题是 windows 不知道如何处理 python 文件。要么更改您的 Windows 设置,要么显式调用 python: python manage.py

于 2012-05-10T13:05:51.320 回答
-1

Django 1.4 与 Python 3.x 不兼容

可能值得再次尝试使用 Python 2.7,看看是否遇到了同样的问题。

于 2012-09-23T23:07:28.873 回答