Django yeni sürüm 3.1, ayarlar dosyasında bazı değişiklikler var
Django'nun yeni 3.1 sürümünde, ayarlar dosyasında bazı değişiklikler var ve statik dosyalarımı ayarlamak için nasıl ilerlemem gerektiğini sormaya geldim. Genelde yaptığım yol pek işe yaramıyor.
Son versiyonlar:
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
Sürüm 3.1:
from pathlib import Path
BASE_DIR = Path(__file__).resolve(strict=True).parent.parent
Statik dosyalarımı genellikle şu şekilde ayarlarım:
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
STATIC_ROOT = os.path.join(BASE_DIR, 'static_root')
MEDIA_ROOT = os.path.join(BASE_DIR, 'media_root')
Will'i eklersem import os
, ama doğru uygulama bu mu? Bunu ayarlamak için en iyi uygulama nedir? Teşekkür ederim?
Yanıtlar
6 Roham
Bu değişiklik, sizin STATIC
ve MEDIA
değişkenlerinizi tanımlamanızı çok daha kolay hale getirir . os
Bu amaçla içe aktarmanıza bile gerek yok ve tek ihtiyacınız olan şu kodları kendi hesabınıza eklemek settings.py
:
BASE_DIR = Path(__file__).resolve(strict=True).parent.parent # which shows the root directory of your project
STATIC_ROOT = BASE_DIR / 'static' # is equal to os.path.join(BASE_DIR, 'static/')
STATIC_URL = '/static/'
MEDIA_ROOT = BASE_DIR / 'media' # is equal to os.path.join(BASE_DIR, 'media/')
MEDIA_URL = '/media/'
Ankit
STATIC_ROOT = BASE_DIR.parent / "static_cdn"
STATIC_ROOT içindeki ortam dizininizi eklemek istiyorsanız bunu deneyin
Donovan, Şarkılarından 1'ini The Beatles'ın "Lucy in the Sky with Diamonds" şarkısıyla karşılaştırdı
Gene Simmons, KISS Çizgi Romanlarının Potansiyel Olarak "İnsanlığı Yeniden Yaratabileceğini" Söyledi
Tom Girardi Dolandırıcılık Suçlamalarından Yargılanma Yetkisinin Belirlenmesi İçin Duruşmaya Katıldı
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'