Skip to main content

链式操作

GORM 允许链式操作(Method Chaining),你可以将多个方法链接在一起。

db.Where("name = ?", "jinzhu").Where("age = ?", 18).First(&user)

GORM 在链式操作中是线程安全的,因为每个链式操作都会创建一个新的 Statement 实例(New Clone),不会污染原始的 DB 实例。

tx := db.Where("name = ?", "jinzhu")

tx.Where("age = ?", 18).First(&user)
tx.Where("age = ?", 20).First(&user2)