Django அறிமுக வழிகாட்டி: உங்கள் முதல் வலை பயன்பாட்டை விரைவாக உருவாக்குங்கள்
Django அறிமுக வழிகாட்டி: உங்கள் முதல் வலை பயன்பாட்டை விரைவாக உருவாக்குங்கள்
Django என்பது ஒரு மேம்பட்ட பைதான் வலை கட்டமைப்பு ஆகும், இது விரைவான மேம்பாடு மற்றும் எளிய வடிவமைப்பை இலக்காகக் கொண்டது. இது மாதிரி-வார்ப்புரு-பார்வை (MTV) கட்டமைப்பைப் பின்பற்றுகிறது, குறியீடு மறுபயன்பாடு மற்றும் கூறுபடுத்தலை ஊக்குவிக்கிறது. இந்த வழிகாட்டி ஒரு எளிய Django பயன்பாட்டை படிப்படியாக உருவாக்க உங்களுக்கு வழிகாட்டும், இது விரைவாக தொடங்க உதவும்.
1. சுற்றுச்சூழல் அமைப்பு
முதலில், உங்கள் கணினியில் பைதான் நிறுவப்பட்டுள்ளதா என்பதை உறுதிப்படுத்த வேண்டும். Django பைதான் 3.6 அல்லது அதற்கு மேற்பட்ட பதிப்பைப் பயன்படுத்த பரிந்துரைக்கிறது.
1.1 பைத்தானை நிறுவுதல்
உங்கள் கணினியில் பைதான் நிறுவப்படவில்லை என்றால், நீங்கள் பைதான் அதிகாரப்பூர்வ வலைத்தளத்திலிருந்து பதிவிறக்கம் செய்து நிறுவலாம்.
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 திட்டத்தின் எலும்புக்கூடு கோப்புகள் இருக்கும். -
mysiteஅடைவுக்குள் செல்லவும்:cd mysite -
Django திட்ட அடைவு அமைப்பு பின்வருமாறு:
mysite/ manage.py mysite/ __init__.py settings.py urls.py asgi.py wsgi.pymanage.py: Django திட்டத்தை நிர்வகிக்க பயன்படும் ஒரு கட்டளை வரி கருவி.mysite/: திட்ட உள்ளமைவைக் கொண்ட பைதான் தொகுப்பு.__init__.py: ஒரு வெற்று கோப்பு, பைதான் இந்த அடைவை ஒரு பைதான் தொகுப்பாக கருத வேண்டும் என்று கூறுகிறது.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 ஏராளமான செயல்பாடுகளை வழங்குகிறது, நீங்கள் தொடர்ந்து கற்று மேலும் சிக்கலான வலை பயன்பாடுகளை உருவாக்கலாம்.





