如何在使用pycharm時在django上下文中運行任意腳本?如何從pycharm在django上下文中運行腳本
在django上下文中運行一個arbirtary腳本可以很容易地開發後臺任務或做臨時查詢。標準答案是將腳本添加到自定義命令,但是,我不習慣於該工作流程,如果您不打算像這樣公開它,似乎是一個不必要的步驟。
這是一個問題和答案的帖子,因爲我無法在StackOverflow中的任何位置找到此技術,我認爲這會有所幫助。在我學習Django的第三個小時我想要一個答案。
如何在使用pycharm時在django上下文中運行任意腳本?如何從pycharm在django上下文中運行腳本
在django上下文中運行一個arbirtary腳本可以很容易地開發後臺任務或做臨時查詢。標準答案是將腳本添加到自定義命令,但是,我不習慣於該工作流程,如果您不打算像這樣公開它,似乎是一個不必要的步驟。
這是一個問題和答案的帖子,因爲我無法在StackOverflow中的任何位置找到此技術,我認爲這會有所幫助。在我學習Django的第三個小時我想要一個答案。
我剛剛開始與Django。可能有更好的方法,但我正在開發一些任務,這些任務最終將發送到芹菜,同時開發它們,我發現在django環境中快速運行它們很方便。我用pycharm
要做到這一點:
建立一個標準的Python運行環境,使腳本要執行的腳本。 添加一個環境變量DJANGO_SETTINGS_MODULE並將其設置爲您的settings.py的python導入路徑。例如,如果你的settings.py是一個目錄名爲MYAPP: DJANGO_SETTINGS_MODULE = myapp.settings
使工作目錄項目根 離開「添加內容根」 &「添加源根」複選框勾選。
在腳本中,在頂部加入以下兩行:
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
,現在你可以使用
if __name__ == "__main__":
,你是關閉和運行。
或運行測試或其他。
這很容易,然後運行一個腳本,需要Django的背景:
PYTHONPATH=${PYTHONPATH}:. DJANGO_SETTINGS_MODULE=project.settings python dir1/dir2/myscript.py
運行從普通的Django的根目錄。
信用評價:Stavros Korokithakis https://www.stavros.io/該職位:https://www.stavros.io/posts/standalone-django-scripts-definitive-guide/