gorm 如何读取数据呢?
package dryad
import (
"time"
"fmt"
"log"
// "gnome/init"
"net/http"
"github.com/gin-gonic/gin"
"github.com/jinzhu/gorm"
_ "github.com/jinzhu/gorm/dialects/postgres"
)
func Hlogin(c *gin.Context) {
var phone string = c.Param("phone")
var pwd string = c.Param("pwd")
if (phone==""||pwd==""){
c.Data(http.StatusOK, "text/json", []byte(`{"status":"false","info":""}`))
}
// gnome.Db.Close()
Db,errs:=gorm.Open("postgres","user=postgres dbname=july password=123456789 host=192.168.1.113 port=5432 sslmode=disable")
if errs!=nil{
log.Fatal( fmt.Sprint("数据库连接%s",errs.Error() ))
}
defer Db.Close()
var huser = Human{}
qhuser:=Db.Where("phone = ?" ,phone).First(&huser)
if err:=qhuser.Error; err!=nil{
c.Data(http.StatusOK, "text/json", []byte(`{"status":"false","info":"用户名不存在"}`))
}
fmt.Println(huser)
fmt.Println(huser.name)
// fmt.Println( qhuser )
c.Data(http.StatusOK, "text/json",[]byte(fmt.Sprintf(`{"status":"true","info":"成功","name":"%s"}`,huser.name)))
// c.Data(http.StatusOK, "text/json", []byte(`{"status":"true","bo":}`))
return
}
type Human struct{
sex int `gorm:"SMALLINT"`
id int `gorm:"primary_key"`
cookieid string `gorm:"size:80"`
phone string `gorm:"size:18;not null;unique"`
name string `gorm:"size:25;not null"`
password string `gorm:"size:25;not null"`
onLining bool
onBlacklist bool
onBlacklistCreatTime time.Time
speechless bool
speechlessCreatTime time.Time
headImg string `gorm:"size:255"`
typeStyle int
email string `gorm:"type:varchar(255);unique_index"`
born_y int
born_m int
born_d int
grade int
declaration string `gorm:"size:255"`
createTime time.Time
updateTime time.Time
}
func (Human) TableName() string {
return "human"
}
postgresql 没有sql 查询的日子的记录,代码里面 huser 也获取不到数据。 帮我看看代码有问题没!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
问题在于,你的model中字段的定义,要以大写开头,按照规范来做, 你自己试试
这样
而且这里你error处理的有问题的
这边error不是只有ErrRecordNotFound,还有数据库执行查询失败的错误
mode 写在一个文件里面 应该首字母大写的,之前表示python 生产。 命名规则和gorm命名规则不一样。