Pernah nggak sih kepikiran buat bikin website sendiri yang interaktif dan kece? Nah, kalau iya, kamu harus coba Django! Framework ini nggak cuma powerful, tapi juga super ramah buat pemula. Yuk, kita bikin website skala kecil pake Django!
Apa Itu Django?
Django adalah framework web berbasis Python yang memudahkan kamu buat ngebangun website dengan cepat. Django udah nyediain berbagai fitur keren kayak sistem autentikasi, admin panel, hingga dukungan untuk database. Intinya, Django bikin coding jadi lebih praktis dan efisien.
Persiapan Sebelum Mulai
Sebelum mulai, pastiin kamu udah punya beberapa hal ini:
- Python: Install Python (minimal versi 3.8).
- Pip: Udah otomatis ada kalau kamu install Python.
- Virtual Environment: Supaya project kamu lebih rapi dan nggak bentrok sama project lain.
- Editor Code: Gunakan editor favoritmu, misalnya VS Code.
Kalau udah siap, kita langsung aja mulai, yuk!
Langkah-Langkah Membuat Website
1. Buat Virtual Environment
Pertama, kita bikin virtual environment untuk project Django kita. Jalankan perintah berikut di terminal:
python -m venv env
Aktifkan virtual environment:
- Windows:
env\Scripts\activate
- Mac/Linux:
source env/bin/activate
2. Install Django
Install Django dengan pip:
pip install django
Cek apakah Django sudah terinstall dengan mengetik:
django-admin --version
3. Buat Project Django
Sekarang, kita bikin project baru. Ketik perintah ini:
django-admin startproject mywebsite
Ini akan membuat folder baru bernama mywebsite
yang berisi file-file penting untuk project Django.
4. Jalankan Server
Masuk ke folder project:
cd mywebsite
Lalu jalankan server lokal:
python manage.py runserver
Buka browser dan akses http://127.0.0.1:8000
. Kalau muncul halaman “Welcome to Django”, berarti kamu berhasil!
5. Buat Aplikasi Baru
Di Django, aplikasi adalah komponen modular dari project kamu. Misalnya, kalau mau bikin fitur blog, kamu bisa bikin aplikasi khusus untuk blog. Kita coba bikin aplikasi baru bernama blog
:
python manage.py startapp blog
Tambahkan aplikasi ini ke INSTALLED_APPS
di file settings.py
:
INSTALLED_APPS = [
...,
'blog',
]
6. Buat Model untuk Database
Kita akan bikin model untuk menyimpan data postingan blog. Edit file models.py
di folder blog
:
from django.db import models
class Post(models.Model):
title = models.CharField(max_length=200)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
def __str__(self):
return self.title
Jalankan migrasi untuk membuat tabel di database:
python manage.py makemigrations
python manage.py migrate
7. Buat Admin Panel
Django punya admin panel bawaan yang super praktis. Tambahkan model Post
ke admin panel dengan mengedit file admin.py
:
from django.contrib import admin
from .models import Post
admin.site.register(Post)
Jalankan server lagi, lalu akses admin panel di http://127.0.0.1:8000/admin
. Login dengan akun admin yang bisa kamu buat dengan perintah:
python manage.py createsuperuser
8. Buat View dan URL
Sekarang kita bikin halaman sederhana untuk menampilkan postingan blog. Edit file views.py
di folder blog
:
from django.shortcuts import render
from .models import Post
def home(request):
posts = Post.objects.all()
return render(request, 'blog/home.html', {'posts': posts})
Lalu tambahkan URL untuk view ini. Buat file urls.py
di folder blog
:
from django.urls import path
from . import views
urlpatterns = [
path('', views.home, name='home'),
]
Dan hubungkan URL aplikasi ke URL project. Edit file urls.py
di folder mywebsite
:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('blog.urls')),
]
9. Buat Template
Buat folder templates
di dalam folder blog
, lalu buat file home.html
di dalamnya:
<!DOCTYPE html>
<html>
<head>
<title>Blog</title>
</head>
<body>
<h1>Welcome to My Blog</h1>
{% for post in posts %}
<h2>{{ post.title }}</h2>
<p>{{ post.content }}</p>
<small>Posted on {{ post.created_at }}</small>
<hr>
{% endfor %}
</body>
</html>
Selesai!
Sekarang kamu udah punya website blog sederhana! Kamu bisa akses website kamu di http://127.0.0.1:8000
dan mulai explore fitur Django lebih dalam.
Next Step
Setelah ini, kamu bisa coba:
- Menambahkan fitur autentikasi user.
- Membuat halaman detail untuk setiap postingan.
- Mengintegrasikan CSS dan JavaScript supaya tampilannya makin kece.
Selamat mencoba, dan jangan lupa bersenang-senang dengan Django! 馃殌