雄辩的关系分组关系

时间:2017-04-28 14:18:09

标签: laravel laravel-5

我正在尝试为订单的模型创建关系,该订单将按菜单项对项目进行分组,最终得到以下数据结构(当输出到JSON时):

{
  "id": 123,
  "items": [
    {
      "menu_item_id": 32,
      "items": [
        {
          "id": 456,
          "order_id": 123,
          "menu_item_id": 32
        },
        {
          "id": 457,
          "order_id": 123,
          "menu_item_id": 32
        }
      ]
    },
    {
      "menu_item_id": 37,
      "items": [
        {
          "id": 466,
          "order_id": 123,
          "menu_item_id": 37
        },
        {
          "id": 467,
          "order_id": 123,
          "menu_item_id": 37
        }
      ]
    }
  ]
}

我有以下型号&关系:

class Order extends Model
{
    ...
    public function items()
    {
        return $this->hasMany('App\Models\OrderItem');
    }
    ...
}

class OrderItem extends Model
{
    ...
    public function menuItem()
    {
        return $this->belongsTo('App\Models\MenuItem');
    }
    ...
}

有关如何提出建议?

编辑: 我现在得到了:

{
    "id": 388,
    "items": [{
        "id": 891,
        "order_id": 388,
        "menu_item_id": 928,
        "menu_item": {
            "id": 928,
            "price_in_cents": 2795,
        }
    }, {
        "id": 892,
        "order_id": 388,
        "menu_item_id": 929,
        "menu_item": {
            "id": 929,
            "price_in_cents": 2495,
            "name": "Teriyaki Salmon",
        }
    }]
}

0 个答案:

没有答案