Как вернуть запись, которую я создаю с помощью Create () Gorm? - PullRequest
0 голосов
/ 08 декабря 2018

Как вернуть запись, которую я создаю с помощью Create () Gorm ?

Например, я создаю пользователя с Create() в коде ниже:

package main

import (
    "apiserver/model"
    "fmt"

    "github.com/jinzhu/gorm"
    _ "github.com/jinzhu/gorm/dialects/postgres"
)


func main() {
    db, err := gorm.Open("postgres", "host=127.0.0.1 port=5432 user=postgres dbname=exampledb password=123 sslmode=disable")
    if err != nil {
        fmt.Println(err)
    }
    defer db.Close()   

    db.AutoMigrate(&model.User{})
    user := User{Name: "Jack", Age: 18}
    db.Create(&user)
}

Я хочу вернуть эту user запись, как это сделать?

обновление:

Нужно ли делать это с Where()?Как это:

db.Where("name = ?", "Jack").First(&user) 

1 Ответ

0 голосов
/ 08 декабря 2018

Согласно официальным документам и Раздел значений по умолчанию после создания все свойства обновляются внутри объекта.Так что должно быть достаточно использовать объект, ссылку на который вы передали Create

user := User{Name: "Jack", Age: 18}
db.Create(&user)
fmt.Println(user.Name, user.Age)
...