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")