Django
प्रोजेक्ट संरचना
खोज…
रिपोजिटरी> प्रोजेक्ट> साइट / कॉन्फिडेंस
स्रोत नियंत्रण के तहत requirements
और deployment tools
के साथ एक Django परियोजना के लिए। यह उदाहरण Django के दो स्कूप से अवधारणाओं पर बनाता है। उन्होंने एक खाका प्रकाशित किया है :
repository/
docs/
.gitignore
project/
apps/
blog/
migrations/
static/ #( optional )
blog/
some.css
templates/ #( optional )
blog/
some.html
models.py
tests.py
admin.py
apps.py #( django 1.9 and later )
views.py
accounts/
#... ( same as blog )
search/
#... ( same as blog )
conf/
settings/
local.py
development.py
production.py
wsgi
urls.py
static/
templates/
deploy/
fabfile.py
requirements/
base.txt
local.txt
README
AUTHORS
LICENSE
यहां apps
और conf
फोल्डर में क्रमशः प्रोजेक्ट के लिए user created applications
और core configuration folder
हैं।
project
डायरेक्टरी में static
और templates
फोल्डर में क्रमशः स्टैटिक फाइल्स और html markup
फाइल्स होती हैं, जिन्हें पूरे प्रोजेक्ट में विश्व स्तर पर उपयोग किया जाता है।
और सभी ऐप फोल्डर blog
, accounts
और search
भी (ज्यादातर) static
और templates
फ़ोल्डर होते हैं।
Django ऐप्स में स्थिर और टेम्प्लेट फ़ाइलों का नामकरण
ऐप्स में static
और templates
फ़ोल्डर में ऐप ex. blog
के नाम के साथ एक फ़ोल्डर भी होना चाहिए ex. blog
इस नाम स्थान प्रदूषण को रोकने के लिए इस्तेमाल किया एक सम्मेलन है, इसलिए हम की तरह फ़ाइलों को संदर्भित /blog/base.html
बजाय /base.html
जो फ़ाइल हम संदर्भित कर रहे हैं और बरकरार रखता नाम स्थान के बारे में अधिक स्पष्टता प्रदान करता है।
उदाहरण: blog
और search
एप्लिकेशन के अंदर के templates
फ़ोल्डर में नाम base.html
साथ एक फ़ाइल होती है, और जब आपके एप्लिकेशन को views
में फ़ाइल को संदर्भित करते हैं तो किस फ़ाइल में रेंडर किया जाता है।
(Project Structure)
.../project/
apps/
blog/
templates/
base.html
search/
templates/
base.html
(blog/views.py)
def some_func(request):
return render(request, "/base.html")
(search/views.py)
def some_func(request):
return render(request, "/base.html")
## After creating a folder inside /blog/templates/(blog) ##
(Project Structure)
.../project/
apps/
blog/
templates/
blog/
base.html
search/
templates/
search/
base.html
(blog/views.py)
def some_func(request):
return render(request, "/blog/base.html")
(search/views.py)
def some_func(request):
return render(request, "/search/base.html")