2015-03-03 43 views
0

我想運行一個Django項目,在我的同事的機器上工作正常,但在嘗試運行服務器時從乾草堆中得到一個錯誤。Django haystack語法錯誤

File "manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/usr/local/lib/python3.2/dist-packages/django/core/management/__init__.py", line 399, in execute_from_command_line 
    utility.execute() 
    File "/usr/local/lib/python3.2/dist-packages/django/core/management/__init__.py", line 392, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "/usr/local/lib/python3.2/dist-packages/django/core/management/base.py", line 242, in run_from_argv 
    self.execute(*args, **options.__dict__) 
    File "/usr/local/lib/python3.2/dist-packages/django/core/management/base.py", line 280, in execute 
    translation.activate('en-us') 
    File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/__init__.py", line 130, in activate 
    return _trans.activate(language) 
    File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/trans_real.py", line 188, in activate 
    _active.value = translation(language) 
    File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/trans_real.py", line 177, in translation 
    default_translation = _fetch(settings.LANGUAGE_CODE) 
    File "/usr/local/lib/python3.2/dist-packages/django/utils/translation/trans_real.py", line 159, in _fetch 
    app = import_module(appname) 
    File "/usr/lib/python3.2/importlib/__init__.py", line 124, in import_module 
    return _bootstrap._gcd_import(name[level:], package, level) 
    File "/usr/lib/python3.2/importlib/_bootstrap.py", line 821, in _gcd_import 
    loader.load_module(name) 
    File "/usr/lib/python3.2/importlib/_bootstrap.py", line 436, in load_module 
    return self._load_module(fullname) 
    File "/usr/lib/python3.2/importlib/_bootstrap.py", line 141, in decorated 
    return fxn(self, module, *args, **kwargs) 
    File "/usr/lib/python3.2/importlib/_bootstrap.py", line 342, in _load_module 
    exec(code_object, module.__dict__) 
    File "/usr/local/lib/python3.2/dist-packages/haystack/__init__.py", line 7, in <module> 
    from haystack.utils import loading 
    File "/usr/local/lib/python3.2/dist-packages/haystack/utils/__init__.py", line 28 
    raise AttributeError(u"Provided string '%s' is not a valid identifier." % obj_or_string) 
                     ^
SyntaxError: invalid syntax 

我已經草垛包含在安裝的應用程序。

Linux操作系統Ubuntu 3.5.0-44泛型#67,Ubuntu的SMP週二11月12日19點36分14秒UTC 2013 x86_64的x86_64的x86_64的GNU/Linux的

的Python 3.2.3

PIP 6.0.8從/usr/local/lib/python3.2/dist-packages(蟒蛇3.2)

Name: django-haystack 
Version: 2.3.1 
Location: /usr/local/lib/python3.2/dist-packages 
Requires: Django 

任何想法,歡迎

感謝

+0

請你可以粘貼你的代碼的相關部分? – br3w5 2015-03-03 10:42:42

+0

他的代碼沒有任何更改,所以我不知道要發佈什麼,看起來錯誤來自乾草堆。 – holmeswatson 2015-03-03 11:03:37

回答

1

這似乎是一個Python版本問題。 Python 3.2沒有字符串的u前綴,因爲在Python 3中默認情況下字符串是unicode。在Python 3.3中重新引入了前綴,以使與2.7的兼容性更容易。請參閱3.3 release notes

請注意,PyPI page for Haystack 2.3.1提到3.3+作爲一項要求。

您應該將您的Python版本升級到3.3。

+0

謝謝,我現在升級了我的python3版本。我的django版本仍然安裝了python3.2,但重新安裝pip3會將它安裝到python3.2,我如何安裝特定版本的pip3,或者更改它試圖安裝到的python版本? – holmeswatson 2015-03-03 11:22:03

+0

使用virtualenv。 – 2015-03-03 11:31:12