0
我有一個使用Beego框架在Golang中構建的API,並且我有一個具有多個連接的查詢,然後返回一個JSON結果。Beego/Golang - 查詢結構值
我希望有一種方法可以將每行轉換爲具有更好的鍵名,IE而不是「Stage__Description」只是「Stage」等的結構體......因此,我用鍵構建了一個ResultMap結構體我想要的名稱,我應該創建一個地圖嗎?
查詢:
type ResultMap struct {
Id int
DateAdded time.Time
FirstName string
LastName string
Username string
Stage string
station string
status string
}
//var maps []ResultMap
var maps []orm.Params
num, err := o.QueryTable("test_result_detail").
Filter("Result__Serial", "121994-0001").
Values(&maps, "id", "date_added", "stage__description", "station__station", "status__status", "operator__username", "operator__first_name", "operator__last_name")
JSON結果
[
{
"DateAdded": "2016-10-20T00:00:00-05:00",
"Id": 8306105,
"Operator__FirstName": "Jose",
"Operator__LastName": "Mendez",
"Operator__Username": "3362",
"Stage__Description": "VR1 Test",
"Station__Station": "TS0653",
"Status__Status": "PASS"
},
{
"DateAdded": "2016-10-20T00:00:00-05:00",
"Id": 8306465,
"Operator__FirstName": "Jose",
"Operator__LastName": "Mendez",
"Operator__Username": "3362",
"Stage__Description": "QA Lab X-Ray Inspection",
"Station__Station": "LABEQP-0004",
"Status__Status": "PASS"
},
{
"DateAdded": "2016-10-28T00:00:00-05:00",
"Id": 8547267,
"Operator__FirstName": "Jose",
"Operator__LastName": "Mendez",
"Operator__Username": "3362",
"Stage__Description": "Capture Customer SN",
"Station__Station": "N/A",
"Status__Status": "PASS"
},
{
"DateAdded": "2016-10-28T00:00:00-05:00",
"Id": 8547851,
"Operator__FirstName": "Jose",
"Operator__LastName": "Mendez",
"Operator__Username": "3362",
"Stage__Description": "Final Test",
"Station__Station": "TS0653",
"Status__Status": "PASS"
},
{
"DateAdded": "2017-02-14T00:00:00-06:00",
"Id": 10993864,
"Operator__FirstName": "Jose",
"Operator__LastName": "Mendez",
"Operator__Username": "3362",
"Stage__Description": "QA Mechanical Final Inspection",
"Station__Station": "VISUAL INSPECTION",
"Status__Status": "PASS"
}
]
你能告訴我怎麼會遍歷我的地圖有多個結果上述目的? – xXPhenom22Xx
我更新了上面的例子來處理具有多個結果的json數組。基本上你只需要創建一個你的結構的一部分,然後反編組。 – MahlerFive