我的模型中有dynamic property user
:
class Training extends Model
{
...
public function user()
{
return $this->belongsTo('App\User');
}
}
我可以很容易地在控制器中获得这样的用户名:
Training::find(1)->user->name
但我不知道如何在视野中执行相同的操作。我试过这个:
控制器:
return view('training/single', Training::find(1));
查看:
{{ $user->name }};
但没有成功,我收到错误Undefined variable: user
。所以看起来我无法在视图中访问动态属性。
知道如何在视图中使用动态属性?
答案 0 :(得分:3)
我担心这不太可能。无法在视图中将$this
上下文设置为模型。您可以将模型转换为包含toArray()
的数组,但包含相关模型,您必须使用$user['name']
访问它。
我个人只是明确声明用户变量:
$training = Training::find(1);
return view('training/single', ['training' => $training, 'user' => $training->user]);
答案 1 :(得分:0)
return view('training/single', Training::with('user')->find(1));