通过 RenderJson 传递多个值
Passing multiple values through RenderJson
学习'go'。是否可以通过 RenderJson 方法传递多个值。像 :
return c.RenderJson(Response{Err: "", Results: {<a_struct>, <string>})
我知道你可以传递一个 variable/value/struct 比如:
return c.RenderJson(Response{Err: "", Results: <a_struct>)
为了实现我的目的,我可以创建一个 'a_struct' 和 'string' 的结构并将其传递。想知道是否可以通过传递多个值来实现。
根据 https://godoc.org/github.com/revel/revel#Controller.RenderJson,RenderJson 只需要一个 interface{}
。所以我希望
return c.RenderJson(
Response{
Err: "",
Results: map[string]interface{}{
"a_struct": a_struct,
"other_thing": someString,
},
}
)
有可能
示例来自 Revel's manual:
// Simple example
type Stuff struct {
Foo string ` json:"foo" xml:"foo" `
Bar int ` json:"bar" xml:"bar" `
}
func (c MyController) MyAction() revel.Result {
data := make(map[string]interface{})
data["error"] = nil
stuff := Stuff{Foo: "xyz", Bar: 999}
data["stuff"] = stuff
return c.RenderJson(data)
//return c.RenderXml(data)
}
学习'go'。是否可以通过 RenderJson 方法传递多个值。像 :
return c.RenderJson(Response{Err: "", Results: {<a_struct>, <string>})
我知道你可以传递一个 variable/value/struct 比如:
return c.RenderJson(Response{Err: "", Results: <a_struct>)
为了实现我的目的,我可以创建一个 'a_struct' 和 'string' 的结构并将其传递。想知道是否可以通过传递多个值来实现。
根据 https://godoc.org/github.com/revel/revel#Controller.RenderJson,RenderJson 只需要一个 interface{}
。所以我希望
return c.RenderJson(
Response{
Err: "",
Results: map[string]interface{}{
"a_struct": a_struct,
"other_thing": someString,
},
}
)
有可能
示例来自 Revel's manual:
// Simple example
type Stuff struct {
Foo string ` json:"foo" xml:"foo" `
Bar int ` json:"bar" xml:"bar" `
}
func (c MyController) MyAction() revel.Result {
data := make(map[string]interface{})
data["error"] = nil
stuff := Stuff{Foo: "xyz", Bar: 999}
data["stuff"] = stuff
return c.RenderJson(data)
//return c.RenderXml(data)
}