
Kueri ActiveRecord Lanjutan
Query interface, where, joins, includes, eager loading, masalah N+1, transactions, locking (optimistic/pessimistic)
1Metode ActiveRecord mana yang mengambil record berdasarkan primary key-nya dan memunculkan exception jika tidak ditemukan?
Metode ActiveRecord mana yang mengambil record berdasarkan primary key-nya dan memunculkan exception jika tidak ditemukan?
Jawaban
Metode find mengambil record berdasarkan primary key-nya dan memunculkan exception ActiveRecord::RecordNotFound jika record tidak ada. Ini memastikan kode gagal secara eksplisit alih-alih melanjutkan dengan nilai nil. Untuk menghindari exception dan mengembalikan nil sebagai gantinya, gunakan find_by(id: value).
2Apa perbedaan utama antara find_by dan where.first di ActiveRecord?
Apa perbedaan utama antara find_by dan where.first di ActiveRecord?
Jawaban
find_by langsung mengembalikan satu record atau nil, sedangkan where.first mengembalikan relation ActiveRecord lalu memanggil first untuk mendapatkan hasil pertama. Dalam praktiknya, find_by menghasilkan kueri yang dioptimalkan dengan LIMIT 1, sementara where berpotensi memuat lebih banyak data sebelum memilih elemen pertama.
3Bagaimana cara meneruskan beberapa kondisi ke metode where di ActiveRecord?
Bagaimana cara meneruskan beberapa kondisi ke metode where di ActiveRecord?
Jawaban
Metode where menerima hash dengan beberapa kunci untuk menentukan beberapa kondisi yang akan digabungkan dengan AND. Misalnya, User.where(status: 'active', role: 'admin') menghasilkan WHERE status = 'active' AND role = 'admin'. Untuk kondisi OR, gunakan or atau kueri SQL mentah.
Apa itu masalah N+1 di ActiveRecord?
Metode mana yang digunakan untuk menyelesaikan masalah N+1 dengan memuat asosiasi terlebih dahulu?
+25 pertanyaan wawancara
Topik wawancara Ruby on Rails lainnya
Dasar-Dasar Ruby
Pemrograman Berorientasi Objek di Ruby
Dasar-Dasar Rails
Routing & Controllers
Dasar-Dasar ActiveRecord
Views & Template ERB
Asosiasi ActiveRecord
Formulir Rails
Autentikasi & Otorisasi
Asset Pipeline modern & frontend
Mode API Rails
Pengujian dengan RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Strategi Caching
Migrasi tingkat lanjut
Rails Engines & Aplikasi Modular
Optimasi Performa
Design Pattern Rails
Metaprogramming Ruby
Keamanan Rails
GraphQL dengan Rails
Deployment & Produksi
Monitoring & Logging
Strategi Upgrade Rails
Kuasai Ruby on Rails untuk wawancara berikutnya
Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.
Mulai gratis