11

我得到了 satchmo 来尝试,但第一次尝试时我遇到了一个很大的问题,我不明白出了什么问题。当我$ python clonesatchmo.py进入 clear django 项目时,它会引发错误:

$ python clonesatchmo.py
Creating the Satchmo Application
Customizing the files
Performing initial data synching
Traceback (most recent call last):
  File "manage.py", line 18, in <module>
    from django.core.management import execute_manager
ImportError: cannot import name execute_manager
Traceback (most recent call last):
File "manage.py", line 18, in <module>
  from django.core.management import execute_manager
ImportError: cannot import name execute_manager
Error: Can not copy the static files.
Error: Can not syncdb.

并创建一个存储文件夹。像这样尝试是有效的!!:

$ python manage.py shell
>>> import os, sys
>>> print sys.executable
/some/path/to/python
>>> os.system('bash')
$ /some/path/to/python manage.py validate
# this is NOT fail on "from django.core.management import execute_manager"

我有 Django 1.6 和 Satchmo 0.9.3,python 2.7.5(我不使用 virtualenv)

4

2 回答 2

66

将 manage.py 的内容替换为以下内容(来自新的 django 1.6 项目)。

#!/usr/bin/env python
import os
import sys

if __name__ == "__main__":
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "<app>.settings")

    from django.core.management import execute_from_command_line

    execute_from_command_line(sys.argv)
于 2013-11-15T03:55:49.597 回答
11

execute_manager作为 Django 1.4 https://docs.djangoproject.com/en/1.4/releases/1.4/#django-core-management-execute-manager中项目布局重构的一部分,被放在弃用路径上。根据弃用政策,这意味着execute_manager1.6 中的代码已完全删除。如果您看到此导入错误,则您使用的 Satchmo 版本尚未更新为与 Django 1.6 兼容。

于 2013-08-05T00:17:19.620 回答