Study
Genie

Genie.Renderer & Template

Penjelasan

Modul `Genie.Renderer` adalah lapisan umum di balik `html()` dan `json()` yang mengatur bagaimana konten dirender dan dibungkus layout. Layout default (`app/layouts/app.jl.html`) berisi placeholder `<%= @yield %>` yang akan diisi otomatis dengan konten dari view spesifik saat halaman dirender. Template Genie mendukung logic Julia penuh di dalamnya — percabangan, perulangan, bahkan pemanggilan fungsi lain — sehingga view tidak terbatas pada tampilan statis, cocok untuk menampilkan hasil komputasi atau visualisasi data secara dinamis.

Contoh Konsep

# app/layouts/app.jl.html
# <html>
# <head><title>BlogApp</title></head>
# <body>
#   <%= @yield %>
# </body>
# </html>

using Genie.Renderer.Html

function indexView()
    html("index.jl.html", layout = "app.jl.html", judul = "Beranda")
end

# index.jl.html
# <h1><%= judul %></h1>

Praktikum

Buat layout kustom bernama admin.jl.html dan render sebuah view dengan layout tersebut, bukan layout default.

Editor Latihan

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

Tips

Kalau banyak halaman butuh layout berbeda (misal area admin vs publik), pisahkan file layout daripada menaruh kondisi if di satu layout tunggal.