Django-mediageneratorはこれまでかなり役に立ちましたが、私を悩ませてきたのは、すべてMEDIA_BUNDLES
がで定義されていることですsettings.py
。個々のアプリケーションフォルダ内にメディアバンドルを定義できるようにしたいと思います。
メディアバンドルをすべて一元化するのではなく、アプリケーションごとに分離するにはどうすればよいsettings.py
ですか?
Django-mediageneratorはこれまでかなり役に立ちましたが、私を悩ませてきたのは、すべてMEDIA_BUNDLES
がで定義されていることですsettings.py
。個々のアプリケーションフォルダ内にメディアバンドルを定義できるようにしたいと思います。
メディアバンドルをすべて一元化するのではなく、アプリケーションごとに分離するにはどうすればよいsettings.py
ですか?
これを行うために私が見つけた唯一の方法は、自分でそれを行うことです。設定ファイルと同じフォルダに小さなファイルを書き込むことになりました。
from settings import MEDIA_BUNDLES, INSTALLED_APPS
BUNDLE_NAME = 'MEDIA_BUNDLES' # Name of bundles tuple
BUNDLE_FILE = 'media' # Name of python file
for app_name in INSTALLED_APPS:
if app_name.startswith('apps'):
try:
path = '{app}.{media}'.format(app=app_name, media=BUNDLE_FILE)
app = __import__(path, None, None, [BUNDLE_NAME])
bundles = getattr(app, BUNDLE_NAME)
MEDIA_BUNDLES = MEDIA_BUNDLES + bundles
except Exception, e:
print e