type Response struct {
EmpID string `json:"EmpID" jsonapi:"primary,Employee"`
OwnerID string `json:"OwnerId" jsonapi:"attr,owner_id"`
Start string `json:"Start" jsonapi:"attr,start"`
End string `json:"End" jsonapi:"attr,end"`
Metadata map[string]interface{} `json:"metadata" jsonapi:"attr,Metadata"`
}
response :=[]*Response
response = **// data here //**
result := &response
Теперь, если я это сделаю, jsonapi.Marshal (result)
error : модели должны быть указателем структуры или фрагментом структуры указателей error
Я попытался создать новую структуру и поместил структуру массива внутри этого. Примерно так.
type ArrayResponse struct {
NewResponse *[]Response `jsonapi:"attr,NewResponse"`
}
Я получаю все данные внутри атрибутов, так как я упомянул attr в приведенной выше структуре. Но в идеале, есть ли способ получить массив объектов для маршалинга в jsonapi, не делая этого. Мне нужен ответ в следующем формате json api.
{
"data":[
{
"type":"filetype",
"id":"c33e05b7-8f55-4ee1-8d61-5b5da9110b2f",
"attributes":{
"created_at":"2017-07-02T09:11:10.005351Z",
"updated_at":"2017-07-02T09:11:10.005374Z",
"created_by":"USER_ID",
"url_page":null,
"resource_urls":null,
"attachment_type_id":"1",
"url_type_id":"1",
"url_version":null
},
"relationships":{
"item":{
"data":{
"type":"items",
"id":"f0c2e244-ec02-4a75-bd36-da1f703136e7"
}
}
}
},
{
"type":"filetype",
"id":"cc06bbb5-b4f8-4351-90f3-01df3f3f2116",
"attributes":{
"created_at":"2017-08-02T09:11:10.005351Z",
"updated_at":"2017-08-02T09:11:10.005374Z",
"created_by":"USER_ID",
"url_page":null,
"resource_urls":null,
"attachment_type_id":"1",
"url_type_id":"1",
"url_version":null
},
"relationships":{
"item":{
"data":{
"type":"items",
"id":"b0300df2-365e-44b4-bfc4-f3170dca2289"
}
}
}
}
]}