ジャンゴ·負荷はDjangoのためのモジュールとオブジェクトローダアプリです。
例
完全なAPIドキュメントについては、http://django-load.readthedocs.orgを参照してください。
のは、あなたのアプリはそれらのアプリケーションは、あなたのアプリケーションを拡張できるようにするには、インストール済みのアプリケーションからすべてのplugins.pyファイルをロードしたいとしましょう。あなたは、このようなこれを達成することができます:
django_load.core輸入負荷から
負荷(「プラグイン」)
今度はあなたが同じことをしたいとしましょうが、実際にはこれらのモジュールで何かを、より具体的な、それらのモジュール内のすべてのオブジェクトを見つける、BasePluginのサブクラスであることと、それらのオブジェクトを私達do_something関数を呼び出します。
django_load.core輸入iterloadから
iterload内のモジュール(「プラグイン」)のための:
 ディレクトリの中に、nameの(モジュール):
  OBJ = GETATTR(モジュール、名前)
  issubclass(OBJ、BasePlugin)の場合:
  do_something(OBJ)
またMIDDLEWARE_CLASSESに似インポートパスが含まれMY_APP_PLUGINSという設定を持つことができます。あなたは、これらのプラグインをロードし、それらとdo_something関数をコールするとします。
django_load.core輸入iterload_objectsから
django.confインポート設定から
iterload_object(settings.MY_APP_PLUGINS)でOBJのための:
  do_something(OBJ)
あなたは、単一のオブジェクトをロードする場合は、あまりにもそれを行うことができます。あなたがmypackage.mymoduleモジュールからMyObjectにをロードしたいとしましょう:
django_load.core輸入load_objectから
OBJ = load_object( 'mypackage.mymodule.MyObject')
この特長:
この指定された名前を持つすべてのインストール済みのアプリケーションのすべてのモジュールをロードします。
指定された名前を持つすべてのインストール済みのアプリケーションのすべてのモジュールをロードし、それらを反復処理します。
インポートパスのようなミドルウェアクラスを使用してモジュールからオブジェクトをロードします。
Unittested(http://ci.django-cms.org/job/django-load/を参照してください)
文書化(http://django-load.readthedocs.orgを参照してください)
この要件:
このパイソン
ジャンゴ
コメントが見つかりません