我这个人物的时候,我我的序列化对象JSON,但覆盖toArray
真的这样做的正确方法适用于自动获取user
和replies
序列化时自动获取的关系?Laravel雄辩:如何通过指定者/的toJSON
<?php
class Post extends Eloquent
{
protected $table = 'posts';
protected $fillable = array('parent_post_id', 'user_id', 'subject', 'body');
public function user()
{
return $this->belongsTo('User');
}
public function replies()
{
return $this->hasMany('Post', 'parent_post_id', 'id');
}
public function toArray()
{
$this->load('user', 'replies');
return parent::toArray();
}
}
辉煌。我期望有一个更聪明的方法。 我正在利用Route :: model方法自动获取并将正确的模型传递给我的控制器。这是一个AJAX调用请求JSON,所以当我用我的控制器方法返回模型时,Laravel自动处理toJson调用:-) http://pastebin.com/5MMwiXS2 –
这对我非常有用 - 谢谢!你碰巧知道'$ with'是否记录在任何地方?我无法在Laravel文档中找到它,但似乎确实有用。 – Vince
它似乎只是[在源代码中](https://github.com/laravel/framework/blob/5.4/src/Illuminate/Database/Eloquent/Model.php#L68)。 – bzeaman