【发布时间】:2019-08-23 15:31:16
【问题描述】:
希望你们都做得很好。我在帖子和类别表之间有多对多的关系。通过使用数据透视表,我可以获取帖子所属的所有类别,但我无法获取数据库中存在的所有类别。
这是我的编辑帖子方法:
public function edit(Post $post)
{
$post=Post::find($post->id);
$categories=Category::all();
return view('admin.pages.post.edit',compact('post','categories'));
}
我认为这是我使用的:
<div class="form-group">
<label>Categories</label>
<select class="form-control" id="select2" name="categories_id[]" multiple="multiple">
@foreach($post->categories as $category)
<option value="{{ $category->id }}" selected>{{ $category->name}}</option>
@endforeach
^^ 这显示了帖子所属的当前类别。
现在我有一个属于 WEB 类别的帖子。它在编辑页面中将 WEB 显示为一个类别但我还想显示帖子最初不属于的所有类别(AI、ML 等),以便用户可以选择更新帖子所属的类别属于。
我也使用 select2 作为多选框
【问题讨论】:
-
强烈推荐 LaravelCollective - 表单模型绑定可以自动处理这个问题。现在,你在所有东西上都设置了“selected”——做一个 if-check 看看你是否应该设置 selected 标志。
-
这就是问题所在,因为我似乎无法弄清楚仅将帖子所属的类别设置为选中的逻辑。我的数据透视表有两列 cat_id 和 post_id
-
我是 laravel 的新手,开始自己开发一个小博客来学习它。到目前为止,我已经通过这个博客学习了 mare laravel,然后我可以按照教程进行操作