Menu
CoddyTech

List dari database

Termasuk bagian Model dan Admin dalam perjalanan Django di Coddy. Pelajaran 13 dari 23.

Halaman beranda masih menampilkan tiga judul yang diketik langsung ke dalam view. Halaman dan model bertemu di view: view meminta baris kepada ORM dan meneruskan QuerySet ke template, seperti saat kamu meneruskan list sebelumnya. Halaman berisi buku-buku yang belum kamu baca akan terlihat seperti ini:

from django.shortcuts import render

from .models import Book


def to_read(request):
    books = Book.objects.filter(is_read=False)
    return render(request, "books/to_read.html", {"books": books})

Titik dalam from .models berarti folder app ini sendiri. Dalam template, setiap item dalam perulangan adalah Book, jadi {{ book.title }} dan {{ book.price }} membaca field-nya, sedangkan {{ book }} saja menampilkan __str__-nya.

challenge icon

Tantangan

Mudah
  • Di books/views.py, berikan template semua buku dalam database sebagai books, sebagai pengganti list yang diketik.
  • Di home.html, tampilkan setiap buku dengan judul dan tahunnya di dalam tanda kurung, seperti Dune (1965).

Tekan Jalankan dan buka /. Tambahkan buku di tab Shell, muat ulang halaman, lalu buku itu akan muncul di list.

Coba sendiri

from django.shortcuts import render


def home(request):
    books = ["Dune", "Emma", "The Hobbit"]
    return render(request, "books/home.html", {"books": books})

Semua pelajaran di Model dan Admin

Latihan sendiri: Playground Django