Menu
CoddyTech

Tạo hàng

Thuộc phần Model và trang quản trị trong hành trình Django của Coddy. Bài học 7 trên 23.

Kệ sách của bạn cần thêm sách mới, và bạn sẽ không bao giờ phải viết SQL, ngôn ngữ mà cơ sở dữ liệu sử dụng. Mỗi model đều có Book.objects, trình quản lý của model đó: các phương thức của nó đọc và ghi vào bảng. ORM (bộ ánh xạ đối tượng - quan hệ) của Django chuyển những lời gọi đó thành SQL. Trong chương này, bạn viết code ORM trong explore.py. Nút Chạy thêm chín cuốn sách, rồi chạy tệp như lệnh python manage.py shell < explore.py sẽ làm, và nội dung được in ra sẽ hiển thị trong Console.

Book.objects.create(title="Beloved", author="Toni Morrison", year=1987, price="13.00")

create() tạo một hàng và lưu hàng đó trong một bước; trường bạn bỏ qua sẽ nhận giá trị mặc định. Cách tương tự nhưng gồm hai bước, có thay đổi ở giữa:

silmarillion = Book(title="The Silmarillion", author="J.R.R. Tolkien", year=1977, price="10.50")
silmarillion.is_read = True
silmarillion.save()

Trước khi chạy save(), đối tượng chỉ tồn tại trong Python và id của nó là None.

challenge icon

Thử thách

Dễ

Trong explore.py, thêm hai cuốn sách phía trên print.

  • Dùng create(): Project Hail Mary của Andy Weir, năm 2021, giá 12.99, thể loại khoa học viễn tưởng. Lưu giá trị của thể loại là scifi, không phải nhãn của nó; lấy giá trị này từ lớp Genre.
  • Tạo một Book rồi gọi save(): Klara and the Sun của Kazuo Ishiguro, năm 2021, giá 11.50.

Nhấn Chạy: Console hiển thị 11 books on the shelf.

Tự làm thử

from books.models import Book

# Thêm hai cuốn sách vào đây.


print(Book.objects.count(), "books on the shelf")

Tất cả bài học trong Model và trang quản trị

Tự luyện tập: Playground Django