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:

  1. Python: Install Python (minimal versi 3.8).
  2. Pip: Udah otomatis ada kalau kamu install Python.
  3. Virtual Environment: Supaya project kamu lebih rapi dan nggak bentrok sama project lain.
  4. 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! 馃殌

By Medhy

Leave a Reply