2016-07-17 14 views
1

は整理の信号を維持するには、次のDjangoでは、AppConfig.ready()のシグナルのインポートが複数回実行されないようにするにはどうすればよいですか?

__init__.py

default_app_config = 'posts.apps.PostsConfig' 
私は ready()または import posts.signalsは一度だけ実行されることを確認するにはどうすればよい

apps.py

from django.apps import AppConfig 


class PostsConfig(AppConfig): 
    name = 'posts' 

    def ready(self): 
     import posts.signals 

+1

(http://stackoverflow.com/questions/38341793/perform-model-operations-only-once-at-server-init)サーバINITに(一度だけ)モデル操作を実行]の可能な重複 – solarissmoke

+0

'ready()'が2回実行されているときにどのような問題が発生していますか?シグナルを2回インポートしても問題はありません。 – knbk

+0

@solarissmoke私が探しているもの、ありがとうございました。質問のコンテキストは異なります。これはエラーを修正するためのリクエストです。これはドキュメントに基づいたベストプラクティスの質問です。閉鎖されていても大騒ぎはしませんが、私がこれを投稿する前に他の質問に答えを見つけることができませんでした。 – StringsOnFire

答えて

0
from django.apps import AppConfig 


class PostsConfig(AppConfig): 
    name = 'posts' 
    ready_has_run = False 

    def ready(self): 
     if self.ready_has_run: 
      return 
     import posts.signals 
     self.ready_has_run = True 
関連する問題