Bắt đầu ngayBắt đầu miễn phí

Xác thực schema tích hợp sẵn của MongoDB

Dù MongoDB có schema linh hoạt, nó cũng đi kèm nhiều tính năng mạnh mẽ để xác thực schema. Khi tạo một collection, bạn có thể chỉ định một JSON schema mô tả định dạng mà các tài liệu phải tuân theo.

Lưu ý: ở đây chúng ta dùng tên collection được tạo ngẫu nhiên để bạn có thể thoải mái thử nghiệm với nhiều lượt nộp.

Bài tập này là một phần của khóa học

Nhập môn MongoDB với Python

Xem khóa học

Hướng dẫn bài tập

  • Điều chỉnh lệnh gọi .create_collection(): title phải là "string".
  • Chèn bộ phim vào collection phim vừa tạo, mov.
  • Kiểm tra kết quả chèn để đảm bảo thao tác thành công.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Create collection with schema spec
mov = client.film.create_collection(
  f"movies_{random.randint(1, 100)}",
  validator={
    "$jsonSchema": {
      "required": ["title", "genre", "release_year", "rating"],
      "properties": {
        "title": { "bsonType": ____ },
        "genre": { 
          "bsonType": "array",
          "items": { "bsonType": "string" }
        },
        "release_year": { "bsonType": "int" },
        "rating": { "bsonType": "double" },
        "won_oscar": { "bsonType": "bool" }
      }
    }
  }
)

# Insert movie
res = mov.____({
    "title": "the avengers",
    "genre": ["action", "adventure", "sci-fi"],
    "release_year": 2012,
    "rating": 8.0
})

# Print result
print(____)
Chỉnh sửa và Chạy Mã