我這個人物的時候,我我的序列化對象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