19

我最近安装了 Django-1.5b1。我的系统配置:

  • 操作系统 10.8
  • Python 2.7.1
  • 虚拟环境 1.7.2

当我调用django-admin.py命令时,出现以下错误

(devel)ninja Django-1.5b1: django-admin.py 
Usage: django-admin.py subcommand [options] [args]

Options:
  -v VERBOSITY, --verbosity=VERBOSITY
                        Verbosity level; 0=minimal output, 1=normal output,
                        2=verbose output, 3=very verbose output
  --settings=SETTINGS   The Python path to a settings module, e.g.
                        "myproject.settings.main". If this isn't provided, the
                        DJANGO_SETTINGS_MODULE environment variable will be
                        used.
  --pythonpath=PYTHONPATH
                        A directory to add to the Python path, e.g.
                        "/home/djangoprojects/myproject".
  --traceback           Print traceback on exception
  --version             show program's version number and exit
  -h, --help            show this help message and exit
Traceback (most recent call last):
  File "/Users/sultan/.virtualenvs/devel/bin/django-admin.py", line 5, in <module>
    management.execute_from_command_line()
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 452, in execute_from_command_line
    utility.execute()
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 375, in execute
    sys.stdout.write(self.main_help_text() + '\n')
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 241, in main_help_text
    for name, app in six.iteritems(get_commands()):
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/core/management/__init__.py", line 108, in get_commands
    apps = settings.INSTALLED_APPS
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 52, in __getattr__
    self._setup(name)
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 47, in _setup
    self._wrapped = Settings(settings_module)
  File "/Users/sultan/.virtualenvs/devel/lib/python2.7/site-packages/django/conf/__init__.py", line 132, in __init__
    raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'settings' (Is it on sys.path?): No module named settings

有没有人有同样的错误?任何人都可以提供建议或帮助吗?

谢谢,

苏丹

4

5 回答 5

35

我在开始一个新项目时遇到了同样的问题。我通过在命令提示符下给出这个命令解决了这个问题:

export DJANGO_SETTINGS_MODULE=

通过这种方式,我取消了指向“ settings”文件的变量(使用 发现env | grep DJANGO_SETTINGS_MODULE)我在开始使用virtualenv之前设置

取消设置变量后,django-admin.py脚本就像一个魅力!

于 2013-06-20T14:02:45.907 回答
14

I've had the same issue as you, and I haven't come up with a good fix aside from prepending my project folder to the PYTHONPATH like this:

export PYTHONPATH="/absolute/path/to/django/project/folder:$PYTHONPATH"

where my <project> is located at /absolute/path/to/django/project/folder/<project>. I add that export command to the end of my env/bin/activate script so it happens every time I initialize the virtualenv.

The only difference between our two situations is that I use multiple settings files instead of a single settings.py module.

You can also call django-admin.py from the folder containing your Django project like so:

python ~/.virtualenvs/devel/bin/django-admin.py <command>

so that it recognizes your current working directory as part of the path.

Hope that makes sense. It's kind of clumsy to explain which makes it hard to search for an answer.

于 2013-02-21T06:03:19.197 回答
1

也许您的问题与此有关: Wrong python path in script header

如果你想做除了在你的 venv 中创建一个新的 django 项目之外的任何事情,你应该调用python manage.py(当然,whereis python应该返回你的 venv 可执行文件)

于 2012-12-09T03:53:40.683 回答
0

不要从 django 库的直接路径运行脚本;从任何其他路径运行它。您似乎cd进入了安装 django 的目录(或您下载并扩展它的目录),然后从那里运行命令。

所以试试这个:

(devel)ninja Django-1.5b1: cd 
(devel)ninja: django-admin.py startproject foo
于 2012-12-09T04:01:13.377 回答
-2

你确定你是从 virtualenv django 安装启动 django-admin 吗?也许 path/to/virtualenv/bin/django-admin.py

于 2012-12-08T09:52:59.070 回答