学习'去'。是否可以通过RenderJson方法传递多个值。类似的东西:
return c.RenderJson(Response{Err: "", Results: {<a_struct>, <string>})
我知道你可以传递一个变量/ value / struct,如:
return c.RenderJson(Response{Err: "", Results: <a_struct>)
为了实现我的目的,我可以创建一个'a_struct'和'string'的结构并传递它。想知道是否可以通过传递多个值来实现。
答案 0 :(得分:1)
根据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,
},
}
)
答案 1 :(得分:1)
是的,有可能
来自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)
}