【问题标题】:Returning multiple Laravel Eloquent models as JSON以 JSON 形式返回多个 Laravel Eloquent 模型
【发布时间】:2013-04-04 20:57:21
【问题描述】:

我的“用户”模型与“图像”模型具有多方关系。

只返回用户就像“return Response::eloquent($user);”一样简单。我想返回一个 JSON 数组 {用户:{id:…},图像:[{id:…},{id:…}]} 或者,也许更好, {id:…, 图片: [{id:…},{id:…}]}

安排和运送这些模型的最佳方式是什么?我应该

【问题讨论】:

    标签: laravel laravel-4


    【解决方案1】:

    您需要做的第一件事是确保您的模型设置正确:

    class Users extends Eloquent {
    
        public function images()
        {
            return $this->hasMany('Image');
        }
    
    }
    
    class Image extends Eloquent {
    
        public function user()
        {
            return $this->belongsTo('User');
        }
    
    }
    

    然后在您的路线中,您应该能够执行以下操作:

    Route::any('userinfo/{$userId}', function($userId)
    {
        return Response::json(User::with('images')->find($userId));
    
        //or
    
        return User::with('images')->find($userId)->toJson();
    });
    

    【讨论】:

    • 这有帮助,谢谢。 @Eric_WVGG,检查答案,如果它对你有用,请接受。
    猜你喜欢
    • 2013-03-14
    • 2016-10-30
    • 2021-02-04
    • 1970-01-01
    • 2014-07-14
    • 1970-01-01
    • 2017-05-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多