Я работаю над установкой django и выполнением его в моей системе.
У меня есть проблема, хотя, в этом учебном руководстве, создающем проект, объяснен путем выполнения команды
django-admin.py startproject mysite
Моя проблема - то, что это не работает. Я изменился на каталог, где django-admin.py расположен и выполнил команду
chmod +x django-admin.py
без результатов. Я пытался добавить каталог с файлом к моему пути без результатов. Я закончил тем, что решил свою проблему с этой командой
python /location/of/django-admin.py startproject mysite
который привел к результату, я ожидал. Моя проблема: Что я должен измениться/настроить таким образом что команда
django-admin.py startproject mysite
было бы достаточно?
Вот некоторые эксперименты:
21:09~/Desktop/HI/NSN/Polls > django-admin.py startproject mysite
-bash: django-admin.py: command not found
21:09~/Desktop/HI/NSN/Polls > ./django-admin.py startproject mysite
-bash: ./django-admin.py: No such file or directory
21:09~/Desktop/HI/NSN/Polls > python django-admin.py startproject mysite
python: can't open file 'django-admin.py': [Errno 2] No such file or directory
21:09~/Desktop/HI/NSN/Polls > /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py startproject prufa1
-bash: /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py: /opt/local/bin: bad interpreter: Permission denied
21:09~/Desktop/HI/NSN/Polls > sudo /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py startproject prufa1Password:
sudo: unable to execute /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py: Permission denied
21:09~/Desktop/HI/NSN/Polls > sudo /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py startproject prufa1sudo: unable to execute /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py: Permission denied
21:09~/Desktop/HI/NSN/Polls > python /opt/local/lib/python2.4/site-packages/django/bin/django-admin.py startproject prufa1
21:09~/Desktop/HI/NSN/Polls > ls
mysite prufa1
Заключительное редактирование: проблема решена, см. ответ C Ian для правильного решения. Поблагодарите Вас все за помощь моему, это было очень быстро!
Существует немного больше универсальной версии @Matt Jenkins hashbang (! #), подсказка можно использовать для создания сценария немного более портативным. Удостоверьтесь, что первая строка в файле:
#!/usr/bin/env python
...everything else...
Это говорит, "ищут названную программу python
путем поиска моего PATH
и выполненная остальная часть этого сценария с той программой".
Необходимо будет также установить выполнение, обдумал сценарий с:
chmod +x django-admin.py
Я упоминаю это для полноты, отмечая, что Вы уже сделали это.
Наконец, PATH
переменная на самом деле не содержит .
в нем (текущий рабочий каталог). Это - меры безопасности, и я не рекомендую изменить ту установку (она мешает Вам звонить ./rm
когда Вы имели в виду оболочку rm
например). Таким образом, необходимо назвать сценарий с:
./django-admin.py startproject mysite
Это говорит, "смотрят в текущем рабочем каталоге для django-admin.py" вместо "поиска PATH
переменная", которая является тем, что происходит, если Вы опускаете ./
часть.
Первая строка в файле должна содержать программу, которая запускает скрипт, снабженный префиксом #! (известный как hashbang)
Например:
#!/path/to/python
...python code follows...
Затем можно установить исполняемый файл, обдумал файл, и оболочка интерпретирует его как сценарий с помощью программы, найденной в первой строке как интерпретатор.
Это часто используется со сценариями оболочки, например:
#!/bin/sh
for FILE in `ls`
{
echo "Filename: ${FILE}"
}
Выберите файл в Средстве поиска путем нажатия на него однажды.
Из меню File выбор Получает Информацию.
В окне Info нажмите треугольник рядом с "Открытым с": развернуть тот раздел окна.
Из выпадающего меню, которое появляется, выберите приложение, которое Вы хотите использовать для открытия файла.
— Источник: Университет Индианы - КБ: Как я присваиваю приложение для открытия определенных типов файлов?