python: can't open file 'django-admin.py': [Errno 2] No such file or directory

You're confusing two ways of referring to an executable file.

/usr/local/bin is in your path, and django-admin.py is marked as executable, so you can refer to it without the initial python:

django-admin.py startproject myproject

When you start with python, that is saying "start Python with the script at this path". So, you need to pass the full path, if the script you're trying to start isn't in your current directory.


python django-admin.py - Python execute file django-admin.py in the current working directory.

If you add /usr/local/bin into the PATH environment variable, you can just issue django-admin.py instead of python /usr/local/bin/django-admin.py.

  1. Check whether PATH contains /usr/local/bin

    echo $PATH
    
  2. If there's no /usr/local/bin in the variable, add that:

    export PATH=$PATH:/usr/local/bin  # sh, ksh, bash, ..
    
    set path = ($path /usr/local/bin) # csh
    

Use django-admin.py startproject without the python.

You don't need to use python with the django-admin.py startproject, it should work from any directory. Only on windows you need to specify the full path.

django runs the admin script from the python interpreter in your path.

Tags:

Python

Django