我正在使用laravel作为API,这是我的问题,当我想要检索名为Tags的表时,其中包含[' id',' name',' post_id&# 39;],我将其序列化,如下所示
$tags = Tag::all();
$temp=[];
foreach ($tags as $tag) {
$temp[] = $tag->name;
}
return response()->json($temp);
是否有任何最佳做法可以做到这一点,因为当我想为多个表做同样的事情时,它会烦恼......
答案 0 :(得分:1)
您可以使用pluck
获取单列值数组,
等,
$tags = Tag::pluck('name')->toArray();
如果你想使用关联关系,你可以这样做,
$posts = Posts::with('tags')->all();
foreach($posts as $post){
$post->tag_name = $post->tags->pluck('tag_name');
}
echo "<pre>";
print_r($posts);
现在,您可以使用key tag_name在posts数组中获取标记名称。