RunScriptに混乱しているエラーメッセージがあります。これは、スクリプトがまったく見つからない場合と、スクリプトにインポートエラーがある場合に同じエラーが発生します。
import nonexistrentpackage
def run():
print("Test")
の例では、スクリプト、すなわちrun
機能についてのみ述べた要件があります。
はここでエラーを生成するスクリプトの例です。
test_script.py
をスクリプトフォルダ(project root/your app/scripts/test_script.py
など)に保存します。次に実行してみてください:
(env) [email protected] ~/GP/GP $ python manage.py runscript test_script
No (valid) module for script 'test_script' found
Try running with a higher verbosity level like: -v2 or -v3
ファイルが見つからないのと同じエラーです。今インポート行をoutcommentして、再試行してください:
(env) [email protected] ~/GP/GP $ python manage.py runscript test_script
Test
私の知る限りでは、離れてエラーを伝えるための唯一の方法は、冗長を使用することです(-V2)コマンドラインオプションと、その後最初を見て(スクロールアップ)エラーが返されました:エラーの共通点があるためであると思わ
No module named 'nonexistrentpackage'.
:我々は決定的なラインを見ることができます
(env) [email protected] ~/GP/GP $ python manage.py runscript test_script -v2
Check for www.scripts.test_script
Cannot import module 'www.scripts.test_script': No module named 'nonexistrentpackage'.
Check for django.contrib.admin.scripts.test_script
Cannot import module 'django.contrib.admin.scripts.test_script': No module named 'django.contrib.admin.scripts'.
Check for django.contrib.auth.scripts.test_script
Cannot import module 'django.contrib.auth.scripts.test_script': No module named 'django.contrib.auth.scripts'.
Check for django.contrib.contenttypes.scripts.test_script
Cannot import module 'django.contrib.contenttypes.scripts.test_script': No module named 'django.contrib.contenttypes.scripts'.
Check for django.contrib.sessions.scripts.test_script
Cannot import module 'django.contrib.sessions.scripts.test_script': No module named 'django.contrib.sessions.scripts'.
Check for django.contrib.messages.scripts.test_script
Cannot import module 'django.contrib.messages.scripts.test_script': No module named 'django.contrib.messages.scripts'.
Check for django.contrib.staticfiles.scripts.test_script
Cannot import module 'django.contrib.staticfiles.scripts.test_script': No module named 'django.contrib.staticfiles.scripts'.
Check for django_extensions.scripts.test_script
Cannot import module 'django_extensions.scripts.test_script': No module named 'django_extensions.scripts'.
Check for scripts.test_script
Cannot import module 'scripts.test_script': No module named 'scripts'.
No (valid) module for script 'test_script' found
を拡張機能はimport
を使用してスクリプトを実行します。 os.path.isfile
を使用してファイルの存在を最初にチェックした場合は、より賢明なエラーメッセージがスローされます。