小编A.Y*_*ono的帖子

Golang解组JSON响应,然后将字段名称转换为snake_case

我想获取带有 json 标签的数据,其源具有 PascalCase 格式并将其保存到我的数据库中。但在进入数据库之前,我想将PascalCase格式更改为snake_case格式。

我的问题似乎与这个问题相反(Golang Unmarshal an JSON response, then marshal with Struct field名称)。但我不想在名称字段中使用PascalCase,而是使用snake_case

这是我编写的示例代码:

package main

import (
    "encoding/json"
    "log"
)

// models data to save in DB
type (
    Person struct {
        FirstName string      `json:"FirstName"`
        LastName  string      `json:"LastName"`
        Children  []ChildData `json:"Children,omitempty"`
    }
    ChildData struct {
        ChildName string `json:"ChildName"`
        Age       int    `json:"Age"`
        FavColor  string `json:"FavColor"`
    }
    PersonOut struct {
        FirstName string      `json:"first_name"`
        LastName  string      `json:"last_name"`
        Children  []ChildData `json:"children,omitempty"`
    }
    ChildDataOut struct {
        ChildName string `json:"child_name"`
        Age …
Run Code Online (Sandbox Code Playgroud)

json struct go unmarshalling snakecasing

1
推荐指数
1
解决办法
2113
查看次数

标签 统计

go ×1

json ×1

snakecasing ×1

struct ×1

unmarshalling ×1