Study
Flask

Blueprints

Penjelasan

Semakin besar aplikasi, semakin merepotkan kalau semua route ditulis dalam satu file app.py. Blueprint adalah cara Flask mengelompokkan route, template, dan static file terkait ke dalam modul terpisah yang bisa didaftarkan ke aplikasi utama lewat app.register_blueprint(). Setiap blueprint punya nama sendiri, dan bisa diberi url_prefix supaya semua route di dalamnya otomatis diawali path tertentu, misalnya semua route admin diawali '/admin'. Ini kurang lebih setara dengan konsep modular routing di framework lain, dan sangat membantu tim yang bekerja di fitur berbeda tanpa saling bentrok file.

Contoh Konsep

# blueprints/admin.py
from flask import Blueprint

admin_bp = Blueprint('admin', __name__, url_prefix='/admin')

@admin_bp.route('/dashboard')
def dashboard():
    return 'Dashboard Admin'

@admin_bp.route('/users')
def users():
    return 'Daftar User'

# app.py
from flask import Flask
from blueprints.admin import admin_bp

app = Flask(__name__)
app.register_blueprint(admin_bp)
# route aktif: /admin/dashboard dan /admin/users

Praktikum

Buat blueprint 'toko' dengan url_prefix '/toko' berisi satu route '/produk' yang mengembalikan 'Daftar produk toko'.

Editor Latihan

Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.

Tips

Saat memakai url_for() untuk route di dalam blueprint, sertakan nama blueprint-nya, misalnya url_for('admin.dashboard'), bukan hanya url_for('dashboard').