gpt4 book ai didi

php - 在数据透视表中,我存储了 post_id 和 category_id 如何从数据透视表中获取我的帖子类别名称?

转载 作者:行者123 更新时间:2023-12-03 22:49:41 27 4
gpt4 key购买 nike

这是我的分类模型


namespace App;

use Illuminate\Database\Eloquent\Model;

class Category extends Model
{
public function posts()
{
return $this->belongsToMany('App\Post')->withTimestamps();
}
}

这是我的帖子模型


namespace App;

use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
public function categories()
{
return $this->belongsToMany('App\Category')->withTimestamps();
}
public function tags()
{
return $this->belongsToMany('App\Tag')->withTimestamps();
}
public function user()
{
return $this->belongsTo('App\User');
}
}

这是我的索引函数


public function index()
{
$posts=Post::latest()->get();
return view('admin.post.index',compact('posts'));
}

这是我的浏览页面

      @foreach($posts as $post)
<tr>
<td>{{ $post->id }}</td>
<td>{{ str_limit($post->title,'10') }}</td>
<td>{{$post->categories->pivot->name}}</td>
</tr>
@endforeach

当我想回显我的类别名称时,laravel 给了我这个错误..

ErrorException (E_ERROR) Property [pivot] does not exist on this collection instance. (View: C:\xampp\htdocs\Advanced_Blog_System\resources\views\admin\post\index.blade.php)

我只需要查看类别名称我该如何解决这个问题???

最佳答案

Post 和 Category 都有多对多的关系,所以你需要另一个 foreach 用于分类;

@foreach($post->categories as $category)
{{$category->name}}
@endforeach

关于php - 在数据透视表中,我存储了 post_id 和 category_id 如何从数据透视表中获取我的帖子类别名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59603793/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com