1. 首页
  2. 主题
  3. Go问与答

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

renhe134880 · · 1510 次点击
通过form的post调用post的函数,对内容添加后,想跳转到详细页,但是详细页需要id指定get 方法才可以访问,给button添加herf指定id也没用,请问怎么处理的。 <form class="layui-form layui-form-pane" method="post" enctype="multipart/form-data"action="/update?id={{.note.Id}}" > <div class="layui-form-item"> <label class="layui-form-label">标题</label> <div class="layui-input-block"> <input type="text" name="title" required="" value="{{.note.Title}}" lay-verify="required" placeholder="请输入标题" autocomplete="off" class="layui-input"> </div> </div> <div class="layui-form-item layui-form-text"> <div class="layui-input-block" class="info"> {{/* <div id="edit" style="background: #fff;">*/}} <textarea name="info" class="info" style="width: 730px;height: 400px;overflow-x:hidden;word-wrap: break-word " >{{.note.Content}}</textarea> {{/*/</div>*/}} {{/* <input class="input-xlarge focused" name="info" type="text" id="info" >*/}} </div> </div> <div class="layui-form-item"> <label>上传图片:</label> <img id="imgarea" src="{{.note.Img}}" width="240"/> <input type="file" id="inputarea" style="color: transparent" class="input_file" name="uploadname"> </div> <div class="layui-form-item"> <button class="layui-btn" lay-submit="" lay-filter="save" onclick=javascrtpt:jump()>修改 </button> </div> </form>
参考beego orm Insert 取到id ```golang // https://beego.me/docs/mvc/model/object.md#insert id, err := o.Insert(&amp;user) if err == nil { fmt.Println(id) } ``` 第二步执行跳转 ```golang c.Redirect(&#34;/detail?id=&#34;+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

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中