Laravel基于枢轴表实现文章编辑页复选框选中状态的数据库回显
文章管理功能开发需求说明
- 开发模块:带编辑能力的文章管理功能,文章与关联主题为多对多关系,通过数据库枢轴表(pivot table)存储关联数据
- 核心目标:打开文章编辑页面时,自动将文章首次创建时已勾选的主题复选框设置为选中状态
- 待解决问题:查阅资料得知可使用集合的
contains方法判断复选框的选中状态,但不清楚具体实现逻辑
已完成的现有代码
后端文章创建接口代码
public function createArticle(Request $request) { $data = $request->validate([ 'titreArticle' => 'bail|required|between:5,40', 'typeArticle' => 'bail|required', 'themeCheckbox' => 'required', 'themeCheckbox.*' => 'required', 'contenuArticle' => 'bail|required', ]); $type_articles = Type_article::findOrFail($data['typeArticle']); $article = new Article(); $article->type_article()->associate($type_articles); $themes = Theme::whereIn('theme_id', array_keys($data['themeCheckbox']))->get(); $article->titre = $data['titreArticle']; $article->contenu = $data['contenuArticle']; $article->save(); $article->theme()->attach( $themes); return view('admin'); }
Blade视图层复选框渲染代码
@foreach ($themes as $theme) <div class="form-check form-check-inline"> <input class="form-check-input" type="checkbox" name="themeCheckbox[{{$theme->theme_id}}]" value="1" > <label class="form-check-label">{{ $theme->nom_theme }}</label> </div> @endforeach
内容的提问来源于stack exchange,提问作者Leon
相关产品推荐
相关产品推荐

