Gabay sa Pagsisimula sa Django: Mabilis na Buuin ang Iyong Unang Web Application
Gabay sa Pagsisimula sa Django: Mabilis na Buuin ang Iyong Unang Web Application
Ang Django ay isang advanced na Python Web framework, na may layuning mabilis na pag-develop at simpleng disenyo. Sinusunod nito ang arkitekturang model-template-view (MTV), na naghihikayat sa muling paggamit ng code at componentization. Gagabayan ka ng gabay na ito sa bawat hakbang upang lumikha ng isang simpleng Django application, upang mabilis kang makapagsimula.
1. Pag-setup ng Kapaligiran (Environment)
Una, kailangan mong tiyakin na naka-install ang Python sa iyong system. Inirerekomenda ng Django ang paggamit ng Python 3.6 o mas mataas.
1.1 Pag-install ng Python
Kung hindi naka-install ang Python sa iyong system, maaari mo itong i-download at i-install mula sa Opisyal na Website ng Python.
1.2 Paglikha ng Virtual Environment
Upang ihiwalay ang mga dependency sa pagitan ng iba't ibang proyekto, lubos na inirerekomenda ang paggamit ng virtual environment.
-
Buksan ang terminal o command prompt.
-
Lumikha ng isang direktoryo ng proyekto, halimbawa
myproject:
mkdir myproject cd myproject ```
-
Lumikha at i-activate ang virtual environment:
python3 -m venv venv # O python -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows ```
Pagkatapos i-activate ang virtual environment, ipapakita ng iyong terminal prompt ang `(venv)`, na nagpapahiwatig na gumagamit ka ng virtual environment.
1.3 Pag-install ng Django
Sa aktibong virtual environment, gamitin ang pip upang i-install ang Django:
pip install Django
I-verify kung matagumpay ang pag-install:
python -m django --version
Dapat mong makita ang bersyon ng Django.
2. Paglikha ng Django Project
Pagkatapos i-install ang Django, maaari kang lumikha ng isang bagong Django project.
-
Nasa iyong direktoryo pa rin ng proyekto (
myproject), patakbuhin ang sumusunod na command:
django-admin startproject mysite ```
Lilikha ito ng isang direktoryo na pinangalanang `mysite` sa direktoryo ng `myproject`, na naglalaman ng mga skeleton file ng Django project.
2. Pumasok sa direktoryo ng mysite:
```bash
cd mysite ```
-
Ang istraktura ng direktoryo ng Django project ay ang sumusunod:
mysite/ manage.py mysite/ init.py settings.py urls.py asgi.py wsgi.py ```
* `manage.py`: Isang tool sa command line para sa pamamahala ng Django project.
* `mysite/`: Naglalaman ng Python package ng configuration ng proyekto.
* `__init__.py`: Isang walang laman na file na nagsasabi sa Python na ang direktoryong ito ay dapat ituring bilang isang Python package.
* `settings.py`: Ang configuration file ng proyekto, tulad ng mga setting ng database, debug mode, atbp.
* `urls.py`: URL routing configuration, na nagmamapa ng mga URL sa mga view function.
* `asgi.py`: ASGI (Asynchronous Server Gateway Interface) configuration file, para sa pag-deploy ng mga asynchronous application.
* `wsgi.py`: WSGI (Web Server Gateway Interface) configuration file, para sa pag-deploy ng mga tradisyonal na synchronous application.
3. Simulan ang Development Server
Ang Django ay may kasamang magaan na development server, na nagpapadali sa iyo na mag-develop at mag-test nang lokal.
-
Sa direktoryo ng
mysite, patakbuhin ang sumusunod na command:python manage.py runserver -
Buksan ang iyong browser at bisitahin ang
http://127.0.0.1:8000/. Dapat mong makita ang pahina na nagsasabing "It worked! Congratulations on your first Django-powered page.".
4. Lumikha ng Django Application
Ang isang Django project ay maaaring maglaman ng maraming application. Lumikha tayo ng isang application na pinangalanang myapp.
-
Magbukas ng bagong terminal window (panatilihing tumatakbo ang development server).
-
Sa direktoryo ng
mysite, patakbuhin ang sumusunod na command:python manage.py startapp myappLilikha ito ng direktoryo na pinangalanang
myappsa loob ng direktoryo ngmysite, na naglalaman ng mga skeleton file ng Django application. -
Ang istraktura ng direktoryo ng Django application ay ang sumusunod:
myapp/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py__init__.py: Isang walang laman na file, na nagsasabi sa Python na ang direktoryo ay dapat ituring bilang isang Python package.admin.py: Ginagamit upang i-configure ang Django admin backend.apps.py: Configuration ng application.migrations/: Ginagamit upang pamahalaan ang mga database migration.models.py: Tumutukoy sa mga data model (mga database table).tests.py: Sumulat ng mga test case.views.py: Tumutukoy sa mga view function, na humahawak ng mga request at nagbabalik ng mga response.
-
Sa
mysite/settings.py, idagdag angmyappsa listahan ngINSTALLED_APPS:INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'myapp', # Idagdag ang myapp ]
5. Lumikha ng Simpleng View
Ngayon lumikha tayo ng isang simpleng view, upang ipakita ang "Hello, Django!" sa browser.
-
I-edit ang
myapp/views.pyfile, idagdag ang sumusunod na code:from django.http import HttpResponse def index(request): return HttpResponse("Hello, Django!") -
Lumikha ng
myapp/urls.pyfile, at i-map ang URL sa view function:
from django.urls import path
from . import views
urlpatterns = [
path('', views.index, name='index'),
]
```
3. Isama ang `myapp/urls.py` sa `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')), # Idagdag ang URL configuration ng myapp
]
```
4. Bisitahin ang `http://127.0.0.1:8000/myapp/`. Dapat mong makita ang pahina na may "Hello, Django!".
## 6. Gumawa ng isang Modelo
Gawa tayo ng isang simpleng modelo para mag-imbak ng ilang datos.
1. I-edit ang `myapp/models.py` file, idagdag ang sumusunod na code:
```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
```
Ito ay nagdedefine ng isang modelo na tinatawag na `Question`, na naglalaman ng dalawang field: `question_text` (CharField) at `pub_date` (DateTimeField).
2. Gumawa at i-apply ang database migrations:
```bash
python manage.py makemigrations myapp
python manage.py migrate
```
Ang `makemigrations` command ay gagawa ng migration file batay sa iyong modelo, ang `migrate` command naman ay ia-apply ang migration sa database.
## 7. Gamitin ang Django Admin Backend
Ang Django ay nagbibigay ng isang malakas na admin backend, na nagpapadali sa pamamahala ng iyong datos.
1. Gumawa ng isang superuser:
```bash
python manage.py createsuperuser
```
Sundin ang mga prompt para maglagay ng username, email, at password.
2. I-edit ang `myapp/admin.py` file, irehistro ang `Question` model:
```python
from django.contrib import admin
from .models import Question
admin.site.register(Question)
```
3. Bisitahin ang `http://127.0.0.1:8000/admin/`, gamitin ang iyong ginawang superuser para mag-login. Dapat mong makita ang "Questions" module, kung saan maaari kang magdagdag, mag-edit, at magbura ng mga tanong.
## 8. Gumamit ng mga Template
Ang paggamit ng mga template ay nagbibigay ng mas malawak na flexibility sa paggawa ng mga HTML page.
1. Sa direktoryo ng `myapp`, lumikha ng isang direktoryo na pinangalanang `templates`, at sa loob ng direktoryo ng `templates`, lumikha ng isang direktoryo na pinangalanang `myapp` ( `myapp/templates/myapp` ).
2. Sa direktoryo ng `myapp/templates/myapp`, lumikha ng isang file na pinangalanang `index.html`, at idagdag ang sumusunod na code:
```html
Hello, Django!
The current time is: {{ current_time }}
```
3. I-edit ang file na `myapp/views.py`, gamit ang template:
```python
from django.shortcuts import render
import datetime
def index(request):
now = datetime.datetime.now()
return render(request, 'myapp/index.html', {'current_time': now})
```
Ang `render` function ay maglo-load ng template, at ipapasa ang data sa template para sa pag-render.
4. Bisitahin muli ang `http://127.0.0.1:8000/myapp/`. Dapat mong makita ang pahina na naglalaman ng kasalukuyang oras.
## 9. Konklusyon
Sa pamamagitan ng gabay na ito, nalaman mo na ang mga pangunahing konsepto at paraan ng paggamit ng Django, kabilang ang pag-setup ng kapaligiran, paglikha ng mga proyekto at application, pagtukoy ng mga modelo, paglikha ng mga view, at paggamit ng mga template. Ito ay simula pa lamang, nag-aalok ang Django ng maraming feature, maaari kang magpatuloy sa pag-aaral at pagtuklas, at bumuo ng mas kumplikadong mga Web application.





