DjangoフレームワークPythonスクリプトでDjango環境を呼び出す

1069 ワード

概要


Djangoプロジェクトを作成した後、Pythonスクリプトを使用してデータをテストおよび呼び出す必要がある場合は、次の方法を使用します.
Djangoプロジェクトの下にスクリプトコード環境としてファイルディレクトリを作成し、pyファイルを作成して次のコードをコピーします.
import os

if __name__ == '__main__':
    #  Django ,books_management_system Django 
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", 'books_management_system.settings')
    #  Django 
    import django

    #  Django 
    django.setup()
    #  app models
    from lib import models

    #  , Book 
    books = models.Books.objects.all()
    #  
    print(books)

実行:
, , , ]>
Process finished with exit code 0

エラーが発生する可能性があります


エラーメッセージ:
django.core.exceptions.ImproperlyConfigured: Requested setting INSTALLED_APPS, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings.
問題の原因:
djangoモジュールのインポートとappからmodelsのインポート時のグローバルインポートはif_name__ == '__main__': テスト関数の下にインポートします.
解決策:
(詳細は上記コードを参照)