Read Records
Yozuvlarni o'qish
GORM'da o'qish uchun asosan uchta metod ishlatiladi: First (birinchi mos qator), Find (barcha mos qatorlar), va Where (shart qo'shish uchun, boshqalar bilan zanjirlanadi).
example.go
var user User
db.First(&user, 1) // ID = 1 bo'lgan birinchi foydalanuvchi
var users []User
db.Find(&users) // BARCHA foydalanuvchilar
var adults []User
db.Where("age >= ?", 18).Find(&adults) // shart bilan qidirish
var found User
result := db.Where("email = ?", "aziz@example.com").First(&found)
if result.Error == gorm.ErrRecordNotFound {
fmt.Println("topilmadi")
}Where("age >= ?", 18) — database/sqldagi ? parametrlari bilan bir xil g'oya: qiymatlarni xavfsiz uzatish (SQL injection'dan himoya). Metodlar zanjirlanadi (Where(...).First(...)), bu — "Middleware: Logging and Chaining" darsida ko'rgan zanjirlash g'oyasiga o'xshash naqsh, faqat bu yerda so'rov qurish uchun. gorm.ErrRecordNotFound — database/sqldagi sql.ErrNoRowsning GORM'dagi muqobili.
Key Takeaway
Key Takeaway:
First bitta, Find bir nechta qator o'qiydi; Where orqali shartlarni zanjirlab qo'shish mumkin.
NEXT UP
Update Records