php - 在 Eloquent 地自动获取时重命名关系名称

标签 php laravel laravel-4 eloquent

    class Order extends Elequent{
        protected $table = 'order';
        const CREATED_AT = "createdAt";
        const UPDATED_AT = "updatedAt";

        protected $with = array('orderItem', 'address');
        public function orderItem(){
            return $this->hasMany("OrderItem","orderId");
        }
        public function address(){
            return $this->hasOne("OrderAddress","orderId","id");
        }
    }

    //in controller
    $order = Order::findOrFail($orderId);
    echo $order;

使用上述类将订单序列化为json时,如何将order_item转为orderItem(我更喜欢驼峰式而不是蛇式)

{
  "id": 1,
  "userId": 1,
  "createdAt": "2015-04-30 12:08:26",
  "deletedAt": "0000-00-00 00:00:00",
  "updatedAt": "2015-04-30 12:08:26",
  "state": "activated",
  "deliveryNote": null,
  "order_item": [
    {
      "id": 1,
      "specialProductId": 29,
      "volume": 750,
      "quantity": 2,
      "price": "543.38",
      "orderId": 1,
      "updatedAt": "2015-04-30 12:08:26",
      "createdAt": "2015-04-30 12:08:26"
    }
  ],
  "address": null
}

最佳答案

在您的模型中,将 $snakeAttributes 属性设置为 false。这将防止属性在生成数组时被 snake_cased。

class Order extends Elequent {

    public static $snakeAttributes = false;

}

关于php - 在 Eloquent 地自动获取时重命名关系名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29959111/

相关文章:

php - 如何使 html 选择框默认为最新的数据库条目

php - 如何在单个查询中从多对多关系数据库获取博客文章和类别?或者我应该吗?

php - 获取完整的 url,包括哈希后的查询字符串

php - 让用户链接网站中的网络摄像头以进行流式传输

php - Laravel:使用 Eloquent 方式从多个相关表返回结果

php - laravel上传的图片未添加到数据库

laravel - Composer安装失败php版本冲突

php - Laravel 4继承的属性为null

php - Eloquent parent trait - 调用未定义的方法

mysql - LAravel 查询生成器 - 有点不同的 Where 查询