我有两个这样的模型:
class Task extends Eloquent {
protected $guarded = ['id'];
public function user() {
return $this->belongsTo('User');
}
}
class User extends Eloquent {
protected $guarded = ['id'];
public function task() {
return $this->hasMany('Task');
}
}
和一个刀片索引部分,看起来像这样:
@foreach ($tasks as $task)
{{ "<tr><td>$task->user->fullname</td></tr>" }}
@endforeach
但它不是返回全名,而是返回整个JSON对象,比如。。。
{"id":9,"email":"FunkB@example.com","fullname":"Brycen Funk","created_at":"2014-09-09 16:40:31","updated_at":"2014-09-09 16:40:31"}->fullname
你觉得我做错了什么吗?我提前道歉,因为我确信答案是显而易见的,就在我眼前。
谢谢。
Dan
当您使用Eloquent从DB中获取任务时,您是否渴望将用户与它们一起加载?如果没有,要做到这一点,你只需要沿着以下路线做一些事情:
$tasks = Task::with(['user'])->get();
或者你也可以在前臂循环中这样做:
@foreach ($tasks as $task)
<tr>
<td>{{ $task->user()->fullname }}</td>
</tr>
@endforeach