我正在尝试对主题资源进行CRUD操作。我已经创建了资源控制器,并正确地管理了索引,创建,存储和显示函数。这是我第一次与Laravel合作进行CRUD。在我的表单中,我使用的是select和复选框组字段。
这是themeEdit
刀片视图
@extends('layouts.layout')
@section('content')
<form method="PUT">
@csrf
<!-- Intitulé du thème -->
<input type="text" name="intitule" id="intitule" placeholder="Intitulé du thème" value=" {{$theme->intitule}} " required><br>
<!-- Catégorie -->
<select name="categorie" required>
<option value="">-- Catégorie --</option>
<option value="web">Développement web</option>
<option value="appMobile">Programmation application mobile</option>
<option value="secure">Sécurisation</option>
<option value="other">Autre</option>
</select> <br>
<!-- Filière désirée -->
<input type="checkbox" name="filiere[]" id="GL" value=" {{$theme->filiereDesiree}} " required>
<label for="GL">Génie Logiciel</label><br>
<input type="checkbox" name="filiere[]" id="SI" value=" {{$theme->filiereDesiree}} " required>
<label for="SI">Sécurité Informatique</label><br>
<input type="checkbox" name="filiere[]" id="IM" value=" {{$theme->filiereDesiree}} " required>
<label for="IM">Internet et Multimédia</label><br>
<input type="checkbox" name="filiere[]" id="SIRI" value=" {{$theme->filiereDesiree}} " required>
<label for="SIRI">Systèmes d'Information et Réseaux Informatiques</label><br>
<!-- Descriptif -->
<textarea name="description" id="description" placeholder="Description de la thématique" required> {{$theme->description}} </textarea><br>
<input type="submit" name="submit" id="submit" value="Ajouter">
<span id="error-message" class="text-danger"></span>
<span id="success-message" class="text-success"></span>
</form>
@endsection
我正在通过编辑功能中的Controller将数据传递给视图
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
$theme = Theme::findOrFail($id);
return view('themeEdit', ['theme' => $theme]);
}
我尝试了您在上面的视图代码中看到的内容,以查看是否可以根据数据库中的数据选中或取消选中复选框。它没有达到预期的效果。
<!-- Filière désirée -->
<input type="checkbox" name="filiere[]" id="GL" value=" {{$theme->filiereDesiree}} " required>
<label for="GL">Génie Logiciel</label><br>
<input type="checkbox" name="filiere[]" id="SI" value=" {{$theme->filiereDesiree}} " required>
<label for="SI">Sécurité Informatique</label><br>
<input type="checkbox" name="filiere[]" id="IM" value=" {{$theme->filiereDesiree}} " required>
<label for="IM">Internet et Multimédia</label><br>
<input type="checkbox" name="filiere[]" id="SIRI" value=" {{$theme->filiereDesiree}} " required>
<label for="SIRI">Systèmes d'Information et Réseaux Informatiques</label><br>
如果有用的话,这就是我通过存储控制器功能将数据存储在数据库中的方式
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
$theme = new Theme;
$theme->intitule = $request->input('intitule');
$theme->description = $request->input('description');
$theme->categorie = $request->input('categorie');
$request->merge([
'filiere' => implode(',', (array) $request->get('filiere'))
]);
$theme->filiereDesiree = $request->input('filiere');
$theme->save();
echo "Enregistré";
}
我想知道的是如何从数据库中获取选定或检查的数据,然后在视图的相应字段中正确检索它们。