Django परिचय मार्गदर्शिका: अपना पहला वेब एप्लिकेशन तेज़ी से बनाएँ
Django परिचय मार्गदर्शिका: अपना पहला वेब एप्लिकेशन तेज़ी से बनाएँ
Django एक उच्च-स्तरीय Python वेब फ्रेमवर्क है, जिसका लक्ष्य त्वरित विकास और सरल डिज़ाइन है। यह मॉडल-टेम्प्लेट-व्यू (MTV) आर्किटेक्चर का अनुसरण करता है, कोड पुन: उपयोग और कंपोनेंटाइजेशन को प्रोत्साहित करता है। यह मार्गदर्शिका आपको एक सरल Django एप्लिकेशन बनाने के लिए चरण-दर-चरण मार्गदर्शन करेगी, जिससे आप जल्दी से शुरुआत कर सकेंगे।
1. पर्यावरण सेटअप
सबसे पहले, आपको यह सुनिश्चित करना होगा कि आपके सिस्टम पर Python स्थापित है। Django Python 3.6 या उच्चतर संस्करण का उपयोग करने की अनुशंसा करता है।
1.1 Python स्थापित करें
यदि आपके सिस्टम पर Python स्थापित नहीं है, तो आप इसे Python आधिकारिक वेबसाइट से डाउनलोड और स्थापित कर सकते हैं।
1.2 वर्चुअल वातावरण (Virtual Environment) बनाएँ
विभिन्न परियोजनाओं के बीच निर्भरता को अलग करने के लिए, वर्चुअल वातावरण का उपयोग करने की दृढ़ता से अनुशंसा की जाती है।
-
टर्मिनल या कमांड प्रॉम्प्ट खोलें।
-
एक प्रोजेक्ट निर्देशिका बनाएँ, उदाहरण के लिए
myproject:
mkdir myproject cd myproject ```
-
वर्चुअल वातावरण बनाएँ और सक्रिय करें:
python3 -m venv venv # या python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows ```
वर्चुअल वातावरण को सक्रिय करने के बाद, आपका टर्मिनल प्रॉम्प्ट `(venv)` दिखाएगा, यह दर्शाता है कि आप वर्चुअल वातावरण का उपयोग कर रहे हैं।
1.3 Django स्थापित करें
सक्रिय वर्चुअल वातावरण में, pip का उपयोग करके Django स्थापित करें:
pip install Django
जाँचें कि स्थापना सफल हुई है या नहीं:
python -m django --version
आपको Django का संस्करण नंबर देखने में सक्षम होना चाहिए।
2. Django प्रोजेक्ट बनाएँ
Django स्थापित करने के बाद, आप एक नया Django प्रोजेक्ट बना सकते हैं।
-
अभी भी अपनी प्रोजेक्ट निर्देशिका (
myproject) में, निम्न कमांड चलाएँ:
django-admin startproject mysite ```
यह `myproject` निर्देशिका में `mysite` नामक एक निर्देशिका बनाएगा, जिसमें Django प्रोजेक्ट की कंकाल फ़ाइलें होंगी।
2. mysite निर्देशिका में जाएँ:
```bash
cd mysite ```
-
Django प्रोजेक्ट निर्देशिका संरचना इस प्रकार है:
mysite/ manage.py mysite/ init.py settings.py urls.py asgi.py wsgi.py ```
* `manage.py`: एक कमांड लाइन टूल, जिसका उपयोग Django प्रोजेक्ट को प्रबंधित करने के लिए किया जाता है।
* `mysite/`: Python पैकेज जिसमें प्रोजेक्ट कॉन्फ़िगरेशन शामिल है।
* `__init__.py`: एक खाली फ़ाइल, जो Python को बताती है कि इस निर्देशिका को एक Python पैकेज माना जाना चाहिए।
* `settings.py`: प्रोजेक्ट कॉन्फ़िगरेशन फ़ाइल, जैसे डेटाबेस सेटिंग्स, डिबग मोड आदि।
* `urls.py`: URL रूटिंग कॉन्फ़िगरेशन, URL को व्यू फ़ंक्शन में मैप करता है।
* `asgi.py`: ASGI (Asynchronous Server Gateway Interface) कॉन्फ़िगरेशन फ़ाइल, जिसका उपयोग एसिंक्रोनस एप्लिकेशन को तैनात करने के लिए किया जाता है।
* `wsgi.py`: WSGI (Web Server Gateway Interface) कॉन्फ़िगरेशन फ़ाइल, जिसका उपयोग पारंपरिक सिंक्रोनस एप्लिकेशन को तैनात करने के लिए किया जाता है।## 3. डेवलपमेंट सर्वर शुरू करें
Django एक हल्का डेवलपमेंट सर्वर के साथ आता है, जो आपको स्थानीय रूप से डेवलपमेंट और परीक्षण करने में मदद करता है।
-
mysiteनिर्देशिका में, निम्नलिखित कमांड चलाएँ:python manage.py runserver -
अपना ब्राउज़र खोलें और
http://127.0.0.1:8000/पर जाएँ। आपको "It worked! Congratulations on your first Django-powered page." का पेज दिखाई देना चाहिए।
4. Django एप्लिकेशन बनाएँ
एक Django प्रोजेक्ट में कई एप्लिकेशन हो सकते हैं। आइए myapp नामक एक एप्लिकेशन बनाएँ।
-
एक नई टर्मिनल विंडो खोलें (डेवलपमेंट सर्वर को चालू रखें)।
-
mysiteनिर्देशिका में, निम्नलिखित कमांड चलाएँ:python manage.py startapp myappयह
mysiteनिर्देशिका मेंmyappनामक एक निर्देशिका बनाएगा, जिसमें Django एप्लिकेशन की मूल फ़ाइलें होंगी। -
Django एप्लिकेशन निर्देशिका संरचना इस प्रकार है:
myapp/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py__init__.py: एक खाली फ़ाइल, जो Python को बताती है कि इस निर्देशिका को एक Python पैकेज के रूप में माना जाना चाहिए।admin.py: Django व्यवस्थापक पैनल को कॉन्फ़िगर करने के लिए उपयोग किया जाता है।apps.py: एप्लिकेशन कॉन्फ़िगरेशन।migrations/: डेटाबेस माइग्रेशन को प्रबंधित करने के लिए उपयोग किया जाता है।models.py: डेटा मॉडल (डेटाबेस टेबल) को परिभाषित करता है।tests.py: परीक्षण मामले लिखें।views.py: व्यू फ़ंक्शन को परिभाषित करता है, अनुरोधों को संसाधित करता है और प्रतिक्रियाएँ लौटाता है।
-
mysite/settings.pyमें,myappकोINSTALLED_APPSसूची में जोड़ें:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'myapp', # myapp जोड़ें ]
5. एक सरल व्यू बनाएँ
अब हम एक सरल व्यू बनाते हैं, जो ब्राउज़र में "Hello, Django!" प्रदर्शित करता है।
-
myapp/views.pyफ़ाइल को संपादित करें और निम्नलिखित कोड जोड़ें:from django.http import HttpResponse def index(request): return HttpResponse("Hello, Django!") -
एक
myapp/urls.pyफ़ाइल बनाएँ, और URL को व्यू फ़ंक्शन पर मैप करें:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
```
3. `myapp/urls.py` को `mysite/urls.py` में शामिल करें:
```python
from django.urls import include, path
from django.contrib import admin
urlpatterns = [
path('admin/', admin.site.urls),
path('myapp/', include('myapp.urls')), # myapp के URL कॉन्फ़िगरेशन को जोड़ें
]
```
4. `http://127.0.0.1:8000/myapp/` पर जाएं। आपको "Hello, Django!" का पेज दिखाई देना चाहिए।
## 6. एक मॉडल बनाएं
आइए कुछ डेटा स्टोर करने के लिए एक सरल मॉडल बनाएं।
1. `myapp/models.py` फ़ाइल को संपादित करें और निम्नलिखित कोड जोड़ें:
```python
from django.db import models
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.question_text
```
यह `Question` नामक एक मॉडल को परिभाषित करता है, जिसमें दो फ़ील्ड शामिल हैं: `question_text` (CharField) और `pub_date` (DateTimeField)।
2. डेटाबेस माइग्रेशन बनाएं और लागू करें:
```bash
python manage.py makemigrations myapp
python manage.py migrate
```
`makemigrations` कमांड आपके मॉडल के आधार पर माइग्रेशन फ़ाइलें बनाएगा, और `migrate` कमांड माइग्रेशन को डेटाबेस पर लागू करेगा।
## 7. Django व्यवस्थापक पैनल का उपयोग करें
Django एक शक्तिशाली व्यवस्थापक पैनल प्रदान करता है, जिससे आपके डेटा को प्रबंधित करना आसान हो जाता है।
1. एक सुपरयूजर बनाएं:
```bash
python manage.py createsuperuser
```
संकेतों का पालन करें और उपयोगकर्ता नाम, ईमेल और पासवर्ड दर्ज करें।
2. `myapp/admin.py` फ़ाइल को संपादित करें और `Question` मॉडल को पंजीकृत करें:
```python
from django.contrib import admin
from .models import Question
admin.site.register(Question)
```
3. `http://127.0.0.1:8000/admin/` पर जाएं, और अपने बनाए गए सुपरयूजर का उपयोग करके लॉग इन करें। आपको "Questions" मॉड्यूल दिखाई देना चाहिए, जहाँ आप प्रश्न जोड़, संपादित और हटा सकते हैं।
## 8. टेम्पलेट्स का उपयोग करें
टेम्पलेट्स का उपयोग करके HTML पेज को अधिक लचीले ढंग से जेनरेट किया जा सकता है।1. `myapp` निर्देशिका में `templates` नामक एक निर्देशिका बनाएँ, और `templates` निर्देशिका में `myapp` नामक एक निर्देशिका बनाएँ ( `myapp/templates/myapp` )।
2. `myapp/templates/myapp` निर्देशिका में `index.html` नामक एक फ़ाइल बनाएँ, निम्नलिखित कोड जोड़ें:
```html
Hello, Django!
The current time is: {{ current_time }}
```
3. `myapp/views.py` फ़ाइल संपादित करें, टेम्पलेट का उपयोग करें:
```python
from django.shortcuts import render
import datetime
def index(request):
now = datetime.datetime.now()
return render(request, 'myapp/index.html', {'current_time': now})
```
`render` फ़ंक्शन टेम्पलेट लोड करेगा और डेटा को रेंडरिंग के लिए टेम्पलेट में पास करेगा।
4. `http://127.0.0.1:8000/myapp/` पर फिर से जाएँ। आपको वर्तमान समय वाला पृष्ठ दिखाई देना चाहिए।
## 9. निष्कर्ष
इस गाइड के माध्यम से, आपने Django की बुनियादी अवधारणाओं और उपयोग के तरीकों को समझ लिया है, जिसमें पर्यावरण स्थापित करना, परियोजनाएँ और एप्लिकेशन बनाना, मॉडल को परिभाषित करना, दृश्य बनाना और टेम्पलेट का उपयोग करना शामिल है। यह सिर्फ एक शुरुआत है, Django समृद्ध सुविधाएँ प्रदान करता है, आप सीखना और अन्वेषण जारी रख सकते हैं, और अधिक जटिल वेब एप्लिकेशन बना सकते हैं।





