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 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题