Nilai Default dan Field Kosong
Termasuk bagian Model dan Admin dalam perjalanan Django di Coddy. Pelajaran 3 dari 23.
Simpan buku tanpa menyebutkan apakah kamu sudah membacanya, lalu database menolak: NOT NULL constraint failed. Setiap kolom wajib diisi sampai kamu menentukan sebaliknya, dengan salah satu dari tiga pilihan berikut:
has_subtitles = models.BooleanField(default=True)
rating = models.DecimalField(max_digits=3, decimal_places=1, null=True, blank=True)
tagline = models.CharField(max_length=200, blank=True)default adalah nilai yang didapat baris baru jika kamu tidak memberikan nilai apa pun. null=True memungkinkan kolom menyimpan NULL, yang dibaca Python sebagai None. blank=True memungkinkan formulir dan admin menerima kolom dalam keadaan kosong.
Angka atau tanggal yang mungkin tidak kamu ketahui memerlukan null=True dan blank=True. Teks hanya memerlukan blank=True: teks kosong disimpan sebagai "", sedangkan null akan memberinya dua jenis nilai kosong. TextField adalah teks tanpa batas panjang, untuk sesuatu yang panjang seperti ulasan.
Tantangan
MudahJadikan bagian opsional dari Book sebagai opsional:
is_readdimulai dengan nilaiFalse.finishedboleh kosong: buku yang belum selesai tidak memiliki tanggal.- Tambahkan field
summaryuntuk teks panjang tanpa batas panjang; field ini boleh dibiarkan kosong, disimpan sebagai teks kosong, bukanNULL.
Tekan tombol “Jalankan”, lalu di tab Shell ketik Book.objects.create(title="Emma", author="Jane Austen", year=1815, price="7.50"): perintah ini mencetak <Book: Book object (1)>, bukan error.
Coba sendiri
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=200)
author = models.CharField(max_length=100)
year = models.IntegerField()
price = models.DecimalField(max_digits=6, decimal_places=2)
is_read = models.BooleanField()
finished = models.DateField()
Semua pelajaran di Model dan Admin
1Model Pertamamu
Model PertamamuJenis Field2Membuat query dengan ORM
Membuat BarisAll dan GetFilter dan LookupMenghitung BarisMengurutkan BarisMemperbarui dan MenghapusLatihan sendiri: Playground Django