Привет, Джеффри, добро пожаловать в раздел go
Переполнения стека.
Следующий код должен работать так, как вы ожидаете:
// We want an empty struct
user := User{} // We expect to have one (or no) user returned.
// Check if the username is taken
// Notice the use of First() instead of Find()
if !db.Where("username = ?", "MyUsername").First(&user).RecordNotFound() {
fmt.Println("Username found, here's the user:", user)
} else {
fmt.Println("Username not found")
}
Поскольку mkopriva уже упомянул, ErrRecordNotFound
не сработает при работе со слайсами.
Так как вам не нужны кусочки (ваше имя пользователя должно быть уникальным) мы можем:
Ссылка не группа пользователей, а один пользователь User{}
вместо []User{}
.
Используйте метод gorms
First()
вместо Find()
.