【问题标题】:Laravel - How to access related object other relashionshipLaravel - 如何访问相关对象其他关系
【发布时间】:2019-09-09 00:02:53
【问题描述】:

我有 3 个模型“类别”、“帖子”和“用户”。 Category 与 Post 具有 hasMany 关系。并且 Post 与 User 具有 belongsTo 关系。

我有一个 Category 对象 $cat1,我可以在我的视图中访问它的帖子(和 user_id),但我无法访问更多用户数据(行名)

@foreach ($cat1->posts as $post)
    {{ $post->title }}
    {{ $post->user()->name }}
@endforeach

这会引发错误

未定义的属性: Illuminate\Database\Eloquent\Relations\BelongsTo::$name

【问题讨论】:

    标签: php laravel laravel-5 eloquent eloquent-relationship


    【解决方案1】:

    你可以这样访问它:

    {{ $post->user->name }}
    

    调用函数的时候是查询关系。

    【讨论】:

    • 它不起作用。抛出错误:尝试获取非对象的属性
    • @Badr 你能从你的 Post 模型中展示你的用户方法吗?
    • public function user(){ return $this->belongsTo(User::class); } 在这里。
    • 我有其他具有相同关系的模型,并且它正在使用您的语法,所以我一定错过了其他东西,检查..
    • @Badr 在你的 Post 模型中属性是 user_id
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-12
    • 1970-01-01
    • 2017-08-07
    • 1970-01-01
    相关资源
    最近更新 更多