2012-09-03 10 views
5

を./manage.py。私はsyncdbrunserverで試しました。 chmod a+x manage.pyを試しましたが、問題は解決しません。エラー「そのようなファイルやディレクトリは、」私の<code>django</code>プロジェクト、コマンドこのエラーメッセージで<code>./manage.py [command]</code>結果で

マイmanage.py:

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

if __name__ == "__main__": 
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "myproject.settings") 

    from django.core.management import execute_from_command_line 

    execute_from_command_line(sys.argv) 

私はvirtualenvでDjangoの1.4.1を使用しています。 manage.py [command]を使用するにはどうすればよいですか?

+0

あなたは正しいディレクトリにいますか? –

+0

'/ usr/bin/env python'は端末に入力されたときに何を与えますか? –

+0

確かに、@ Snakesです。 'python manage.py [command]'は間違ったディレクトリでは動作しません;-) – msampaio

答えて

2

#!ハッシュバングラインはあなたのvirtualenvのpythonを指しません。

私のDjangoプロジェクト、コマンド./manage.py [コマンド] このエラーメッセージの結果で
#!/path/to/virtualenv/bin/python 
2

:そのようなファイルやディレクトリは

ないとの最初の行を置き換えます

コマンドpython manage.py [コマンド]がうまく動作します

インタープリタを指定すると動作しますが、それはm UST間違っている可能:

#!/usr/bin/env python 

試してみてください。

#!/usr/bin/python 

(またはインタプリタがあるところはどこでも。それを見つける:which python)。

9

おそらく、manage.pyファイルの行末が\ r \ nではなく\ nであるためです。その結果、#!ハッシュバングが誤って解釈される。

これは私のLinux接続にWindowsベースのテキストエディタを使用すると私に起こります。

+4

Unixでは、これを修正するために "dos2unix"を使用してください。 – Bryce

+0

これは機能します。しかし、その背後にある理由は何ですか? – in3xes

+0

@ in3xes、Linux環境では、Linuxの規則を使用する必要があります。 – Octopus

0

私の場合、私はsys.pathを私のmanage.pyに誤って変更していました。

関連する問題