Django 1.5b1: executing django-admin.py causes “No module named settings” error

后端 未结 5 1492
离开以前
离开以前 2021-02-07 08:25

I\'ve recently installed Django-1.5b1. My system configuration:

  • OSX 10.8
  • Python 2.7.1
  • Virtualenv 1.7.2

When I call django-

相关标签:
5条回答
  • 2021-02-07 08:45

    Don't run the script from the direct path to the django library; run it from any other path. It seems you cd into the directory where django is installed (or where you downloaded and expanded it) and then ran the command from there.

    So try this:

    (devel)ninja Django-1.5b1: cd 
    (devel)ninja: django-admin.py startproject foo
    
    0 讨论(0)
  • 2021-02-07 08:49

    Maybe your problem is related to this: Wrong python path in script header

    If you want to do anything except creating a new django project inside your venv, you should call python manage.py (of course, whereis python should return your venv executable)

    0 讨论(0)
  • 2021-02-07 08:56

    I had the same issue when starting a new project. I solved the problem by giving this command at the command prompt:

    export DJANGO_SETTINGS_MODULE=
    

    in this way I unset the variable that was pointing to a "settings" file (discovered using env | grep DJANGO_SETTINGS_MODULE) I set before starting using virtualenv

    after unsetting the variable the django-admin.py script worked like a charm!

    0 讨论(0)
  • 2021-02-07 09:02

    Are you sure you are starting the django-admin from the virtualenv django instalation ? Perhaps path/to/virtualenv/bin/django-admin.py

    0 讨论(0)
  • 2021-02-07 09:10

    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.

    0 讨论(0)
提交回复
热议问题