Установка нескольких MEDIA_URL & MEDIA_ROOT в Django
Я установил статический и медиа-корень, а также URL в моем приложении django, следующим образом:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static/")
MEDIA_URL = '/crl/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'config/crl/')
Он отлично работает, но я хочу добавить еще один MEDIA_URL & MEDIA_ROOT для обслуживания файлов из /certs/
каталог следующим образом:
NEW_MEDIA_URL = '/certs/'
NEW_MEDIA_ROOT = os.path.join(BASE_DIR, 'config/certs/')
Есть ли способ сделать это? Я использую Django 2.0.6 и Python 3.5
1 ответ
В Django можно добавить несколько статических URL-адресов и статических корней, выполнив следующие действия.
- Настроить
BASE_DIR
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
- Создайте столько статических корней и статических URL-адресов, сколько вам нужно
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, "static/")
# the "static/" above is a directory inside the Django Project Directory
STATIC_URL_1 = '/static-1/'
STATIC_ROOT_1 = os.path.join(BASE_DIR, "static_1/")
- Точно так же вы можете создать столько корней мультимедиа и URL-адресов мультимедиа, сколько вам нужно.
MEDIA_URL = '/crl/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'config/crl/')
MEDIA_URL_1 = '/crl-1/'
MEDIA_ROOT_1 = os.path.join(BASE_DIR, 'config/crl_1/')