一、Get
article.go 里添加代码:
package controllers
import (
"fmt"
"github.com/astaxie/beego"
)
type ArticleController struct {
// 首字母要大写
beego.Controller
}
func (c *ArticleController) Get() {
c.Ctx.WriteString("新闻列表") // 直接给页面返回数据
}
func (c *ArticleController) AddArticle() {
c.Ctx.WriteString("增加新闻")
}
func (c *ArticleController) EditArticle() {
//获取 get 传值
id := c.GetString("id")
fmt.Printf("值:%v 类型:%T", id, id)
beego.Info(id)
c.Ctx.WriteString("修改新闻" + id)
}
展示如下:
通过 err
判断,获取 get 传值:
package controllers
import (
"fmt"
"github.com/astaxie/beego"
)
type ArticleController struct {
// 首字母要大写
beego.Controller
}
func (c *ArticleController) Get() {
c.Ctx.WriteString("新闻列表") // 直接给页面返回数据
}
func (c *ArticleController) AddArticle() {
c.Ctx.WriteString("增加新闻")
}
func (c *ArticleController) EditArticle() {
// 方法名称首字母必须大写
获取 get 传值
//id := c.GetString("id")
//fmt.Printf("值:%v 类型:%T", id, id)
//beego.Info(id)
//c.Ctx.WriteString("修改新闻" + id)
id, err := c.GetInt("id")
if err!=nil{
beego.Info(err)
c.Ctx.WriteString("传入参数错误")
return
}
fmt.Printf("值:%v 类型:%T", id, id)
c.Ctx.WriteString("修改新闻")
}
显示
传入参数错误:
二、Post
user.go:
package controllers
import (
"fmt"
"github.com/astaxie/beego"
"strconv"
)
type UserController struct {
// 首字母要大写
beego.Controller
}
func (c *UserController) Get() {
c.Ctx.WriteString("用户中心")
}
func (c *UserController) AddUser() {
c.TplName = "user.html"
}
// 处理 post 请求 获取 post 提交的数据
func (c *UserController) DoAddUser() {
id, err := c.GetInt("id")
if err != nil {
c.Ctx.WriteString("id 必须是 int 类型")
return
}
fmt.Printf("%v---%T", id, id)
username := c.GetString("username") // 这里的 name 要和 html 中的 name 对应
password := c.GetString("password")
hobby := c.GetStrings("hobby")
fmt.Printf("值: %v---类型: %T", hobby, hobby)
c.Ctx.WriteString("用户中心--" + strconv.Itoa(id) + username + password)
}
user.html:
<!DOCTYPE html>
<html lang="en">
<head>
<meta