shenboran2005 2019-03-14 13:34 采纳率: 0%
浏览 933
已结题

Beego model 转JSON异常?

Beego model 转JSON异常。
需求 。post 一个json数据 进入数据库的order表,并且返回订单编号 和 订单商品编号,
但在最后一部,输出整个JSON串的时候出现异常了详细代码如下

package models

import (
    "fmt"
    "github.com/astaxie/beego"
    "github.com/astaxie/beego/orm"
    _ "github.com/go-sql-driver/mysql"
)

//定义了 订单商品
type Goods struct {
    Id           int32
    Goods_sn     string
    Goods_price  int
    Goods_weight int
    Goods_amount int
    Order        *Order `orm:"rel(fk)"`
}

//定义了  订单model
type Order struct {
    Id           int32
    Order_sn     string
    Order_amount int
    Goodslist    []*Goods `orm:"reverse(many)"`
}

func init() {
    orm.RegisterDriver("mysql", orm.DRMySQL)
    db_config_url := beego.AppConfig.String("dbconfigurl")
    aliasName := beego.AppConfig.String("dbaliasName")
    orm.RegisterDataBase(aliasName, "mysql", db_config_url)
    orm.Debug = true
    orm.RegisterModel(new(User), new(Post), new(Profile), new(Tag))
    orm.RegisterModel(new(Goods), new(Order))
    orm.RunSyncdb("default", false, true)
}


func (c *Order) Createorder() {
    o := orm.NewOrm()
    o.Using("default")
    o.Insert(c)
    //先录入 订单 信息 返回订单编号   c.Id 随数据库表订单编号自增
    fmt.Println(len(c.Goodslist))
    for i := 0; i < len(c.Goodslist); i++ {
        c.Goodslist[i].Order = c
    }
    //把购买的订单商品录入到订单商品表中
    o.InsertMulti(len(c.Goodslist), c.Goodslist)

}

package controllers

import (
    "SmartFarmers/models"
    "encoding/json"
    "fmt"
    "github.com/astaxie/beego"
)

type OrderController struct {
    beego.Controller
}

func (c *OrderController) CreateOrder() {
    var ob models.Order
    body := c.Ctx.Input.RequestBody
    json.Unmarshal(body, &ob)
    ob.Createorder()
    fmt.Println(ob.Id)  //测试打印出订单自增列
    for i:=0;i<len(ob.Goodslist);i++{
        fmt.Print("订单编号:")
        fmt.Println(ob.Goodslist[i].Order.Id)//打印出 商品表中的订单自增号
    }
    c.Data["json"] = ob//问题出现在这里了 ,
    // 请问大家问题出现在哪里? 这里怎么打都打不出来,不知道为啥!shit
    c.ServeJSON()
}

请问他大家该如何解决!

  • 写回答

1条回答

报告相同问题?

悬赏问题

  • ¥15 乘性高斯噪声在深度学习网络中的应用
  • ¥15 运筹学排序问题中的在线排序
  • ¥15 关于docker部署flink集成hadoop的yarn,请教个问题 flink启动yarn-session.sh连不上hadoop,这个整了好几天一直不行,求帮忙看一下怎么解决
  • ¥30 求一段fortran代码用IVF编译运行的结果
  • ¥15 深度学习根据CNN网络模型,搭建BP模型并训练MNIST数据集
  • ¥15 C++ 头文件/宏冲突问题解决
  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥30 python代码,帮调试,帮帮忙吧