sir*_*ros 2 php database checkbox crud laravel
我的管理面板上有15个复选框,因此只有网站管理员可以选择或取消它们。
我需要保存在表中选中的复选框,如下所示:
Name: car,food,game,...
Run Code Online (Sandbox Code Playgroud)
HTML:
{{Form::open(['action'=>'adminHobbyController@store'])}}
<div class="form-group">
<label for="art" class="checkbox-inline">
{{Form::checkbox('art[]','art')}}Art
</label>
<label for="artitecture" class="checkbox-inline">
{{Form::checkbox('artitecture[]','artitecture')}}Artitecture
</label>
<label for="business" class="checkbox-inline">
{{Form::checkbox('business[]','business')}}Business
</label>
...
<div class="form-group">
{{Form::submit('ADD',['class'=>'form-control'])}}
</div>
{{Form::close()}}
Run Code Online (Sandbox Code Playgroud)
我的控制器存储功能:
public function store(Request $request)
{
$add_hobby=new Hobbies;
$add_hobby->name=$request->all();
$add_hobby->save();
return redirect()->back();
}
Run Code Online (Sandbox Code Playgroud)
也可以尝试此操作,但只保存最后一个:
public function store(Request $request)
{
$add_hobby=new Hobbies;
$add_hobby->name=$request->input('car');
$add_hobby->name=$request->input('food');
...
$add_hobby->name=$request->input('fashion');
$add_hobby->save();
return redirect()->back();
}
Run Code Online (Sandbox Code Playgroud)
我也尝试过,但是出现错误:
public function store(Request $request)
{
$request->merge([
'name' => implode(',', (array) $request->input('game')),
'name' => implode(',', (array) $request->input('food')),
...
'name' => implode(',', (array) $request->input('fashion')),
]);
$add_hobby=new Hobbies;
$add_hobby->name=$request->input()->all();
$add_hobby->save();
return redirect()->back();
}
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
当然没有必要保存在一个列中,但我也不知道另一种保存它们的方法
您正在通过这样做创建多个数组
{{Form::checkbox('art[]','art')}}Art
Run Code Online (Sandbox Code Playgroud)
像art[]
使用seomthing那样安装hobby[]
然后再art
作为值
尝试这个
<label for="art" class="checkbox-inline">
{{Form::checkbox('hobby[]','art')}}Art
</label>
<label for="artitecture" class="checkbox-inline">
{{Form::checkbox('hobby[]','artitecture')}}Artitecture
</label>
<label for="business" class="checkbox-inline">
{{Form::checkbox('hobby[]','business')}}Business
</label>
...
<div class="form-group">
{{Form::submit('ADD',['class'=>'form-control'])}}
</div>
Run Code Online (Sandbox Code Playgroud)
然后在您的控制器中,您将像
foreach ($request->input("hobby") as $hobby){
$add_hobby = new Hobbies;
$add_hobby->name= $hobby;
$add_hobby->save();
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6568 次 |
最近记录: |