beego开发网页是如何跳转的?

renhe134880 · · 948 次点击
参考beego orm Insert 取到id ```golang // https://beego.me/docs/mvc/model/object.md#insert id, err := o.Insert(&user) if err == nil { fmt.Println(id) } ``` 第二步执行跳转 ```golang c.Redirect("/detail?id="+strconv.Itoa(id), 302) ```
#3
更多评论
form 提交到Controller, 参数效验通过后,调用Redirect 方法 见源码 ```golang func (ctx *Context) Redirect(status int, localurl string) { http.Redirect(ctx.ResponseWriter, ctx.Request, localurl, status) } ```
#1
<a href="/user/yepinf" title="@yepinf">@yepinf</a> 提交到controller后,跳转不到我的要/details, details文章需要id才能get,现在跳转到index可以, post函数: func (c*IndexController) HandleMessage() { o:=orm.NewOrm() message:=models.Message{} content:=c.GetString(&#34;comment&#34;) message.Content=content _,err:=o.Insert(&amp;message) if err!=nil{ beego.Info(&#34;插入错误&#34;) } id,err:=c.GetInt(&#34;id&#34;) beego.Info(&#34;id is &#34;,id) if err != nil { beego.Info(&#34;获取文章ID错误&#34;,err) return} note:=models.Note{Id:id} m2m := o.QueryM2M(&amp;note,&#34;Messages&#34;) o.Read(&amp;message,&#34;Content&#34;) //多对多插入 m2m.Add(message) if err != nil { beego.Info(&#34;插入失败&#34;,err) return } c.Data[&#34;note&#34;]= note c.Redirect(&#34;/index&#34;, 302) } 路由设置: beego.Router(&#34;/details&#34;,&amp;controllers.IndexController{},&#34;get:ShowDetail&#34;) beego.Router(&#34;/comment&#34;,&amp;controllers.IndexController{},&#34;get:ShowComment;post:HandleMessage&#34;)
#2