首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

小弟上周接触了 GO 在封装 ORM 过程中 有个疑问 请教大佬

  •  
  •   zhuzhiqiang · 8 天前 · 1174 次点击
    GO 没有 null,初始值都会给一个零值, 数据库中有 null 值该怎么处理? 一般情况怎么处理呢? 我现在封装的 orm 都是给了一个零值( int = 0 string =“” Time = time.Time{}) 约定大于配置?
    轮子 https://github.com/zhuzhiqiang18/go_web_curd
    12 回复  |  直到 2019-08-15 13:35:32 +08:00
        1
    SuperMild   8 天前
    自己做轮子?可以参考 gorm 之类的是怎么做的。
        2
    iuoui   8 天前   ♥ 1
    时间 mysql.NullTime
    其他类型 sql.NullInt64 sql.NullString 等等
    另外推荐一个库,github.com/guregu/null
    这个库做了 json 处理,比较方便
        3
    zhuzhiqiang   8 天前
    @SuperMild 刚刚知道了这个框架 谢大佬
        4
    zhuzhiqiang   8 天前
    @iuoui 那这样的话 结构体的字段 就不能用基本类型了吧
        5
    StarkWhite   8 天前
    Go 没有 null,但有 nil 啊
        6
    cuvii   8 天前
    @zhuzhiqiang 可以参考下 gorm 的处理。gorm 里字段定义成指针类型的话,是可以在 mysql 中设置为 null 的
        7
    fuckshit   8 天前
    为什么要自己造轮子呢? gorm 不好用吗
        8
    zhuzhiqiang   8 天前
    @fuckshit 我上周刚接触 GO 看到数据库部分 就顺手封装了 也是才知道这个框架 [逃跑]
        9
    zhuzhiqiang   8 天前
    @cuvii 好的 谢大佬
        10
    mlboy   8 天前 via iPhone
    开源吗
        11
    fuckshit   8 天前
    @zhuzhiqiang gorm xorm 都是挺好的 golang orm 框架, 但是我还是比较喜欢 gorm。
        12
    reus   8 天前
    用指针
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3717 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 19ms · UTC 07:28 · PVG 15:28 · LAX 00:28 · JFK 03:28
    ♥ Do have faith in what you're doing.