Django नया संस्करण 3.1, सेटिंग फ़ाइल में कुछ बदलाव हैं
Django के नए संस्करण 3.1 पर, सेटिंग फ़ाइल में कुछ बदलाव हैं, और मैं यह पूछने आया था कि मुझे अपनी स्थिर फ़ाइलों को सेट करने के लिए कैसे आगे बढ़ना है? जिस तरह से मैं आमतौर पर अधिक काम नहीं करता है।
अंतिम संस्करण:
import os
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
संस्करण 3.1:
from pathlib import Path
BASE_DIR = Path(__file__).resolve(strict=True).parent.parent
मैं आमतौर पर अपनी स्थिर फाइलें इस तरह सेट करता हूं:
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')
अगर मैं import os
वसीयत को सम्मिलित करता हूं , लेकिन क्या यह सही अभ्यास है? इसे सेट करने के लिए सबसे अच्छा अभ्यास क्या है? धन्यवाद?
जवाब
6 Roham
यह परिवर्तन आपके लिए अपने STATIC
और MEDIA
चर को परिभाषित करना बहुत आसान बनाता है । आपको os
इस उद्देश्य के लिए आयात करने की भी आवश्यकता नहीं है और आपको अपनी कोड में निम्नलिखित कोड जोड़ने की आवश्यकता है 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 को पर्यावरण निर्देशिका के अंदर जोड़ना चाहते हैं