Django

QuerySets Lanjutan

Lookups, Q objects, F expressions, aggregation, annotations, select_related, prefetch_related

25 pertanyaan wawancara·
Mid-Level
1

Lookup mana yang memungkinkan pemfilteran objek di mana sebuah field mengandung string tertentu, tanpa membedakan huruf besar dan kecil?

Jawaban

Lookup icontains melakukan pencarian tanpa membedakan huruf besar dan kecil untuk memeriksa apakah sebuah field mengandung substring. Awalan 'i' pada icontains menunjukkan bahwa perbandingan mengabaikan huruf besar/kecil, yang berguna untuk pencarian pengguna di mana kapitalisasi dapat bervariasi.

2

Apa perbedaan utama antara select_related dan prefetch_related?

Jawaban

select_related menggunakan SQL JOIN untuk mengambil objek terkait dalam satu kueri, tetapi hanya bekerja untuk relasi ForeignKey dan OneToOne. prefetch_related menjalankan kueri terpisah lalu menghubungkan objek di Python, sehingga cocok untuk relasi ManyToMany dan reverse ForeignKey.

3

Objek Django mana yang memungkinkan penggabungan kondisi filter dengan operator OR?

Jawaban

Q objects memungkinkan pembuatan kueri kompleks dengan menggabungkan kondisi menggunakan operator | (OR), & (AND), dan ~ (NOT). Tanpa Q objects, panggilan filter() yang dirantai hanya menerapkan kondisi AND, sehingga tidak mungkin membuat kueri OR secara langsung.

4

Apa keuntungan utama menggunakan F() expressions alih-alih nilai Python dalam sebuah update?

5

Metode aggregation mana yang mengembalikan dictionary dengan nilai yang dihitung alih-alih QuerySet?

+22 pertanyaan wawancara

Kuasai Django untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis