关于这个问题,我看到了很多相同的问题,但是我不知道该如何解决
所以我试图保存多个复选框,我认为这个复选框可以工作,但是现在我得到“必须是数组类型,给定字符串”。
顺便说一下,这是我的控制者
public function store(Request $request)
{
// $multi = Multi::create($request->only(['data'])->implode(', '));
// $multi = Multi::select('data')->implode();
$multis = implode(',', $request->get('data'));
$multis = Multi::create(['data' => $request->get('data')]);
return redirect()->route('multi.create')->with('success', 'berhasil.');
这是我的create.blade.php
@foreach($multis as $multi)
{{$multi['data']}}<br>
@endforeach
<br>----------------<br>
{{Form::open(['action'=>'MultiController@store'])}}
{{Form::checkbox('data[]','A')}}A<br>
{{Form::checkbox('data[]','B')}}B<br>
{{Form::checkbox('data[]','C')}}C<br>
{{Form::submit('TAMBAH')}}
{{Form::close()}}
答案 0 :(得分:0)
尝试一下
$multis = implode(',', $request->data));
$multis = Multi::create(['data' => $multis]);
答案 1 :(得分:0)
GAURAV VAGHELA的sooo代码正在工作,但是只有在我插入1个字段并且我试图插入4个多个字段而仍然找不到解决方案的情况下,它才起作用...
im试图将数据保存到“ d”,“ i”,“ s”,“ c”而不是“ data”
我已经尝试过
$multis= implode(',', $request->d);
$multis= implode(',', $request->i);
$multis= implode(',', $request->s);
$multis= implode(',', $request->c);
$multis= Test::create(['d','i','s','c' => $multis]);
和
$multis = implode(',', $request->d,i,s,c);
$multis = Test::create(['d','i','s','c' => $multis]);
和
$multis= implode(',', $request->['d','i','s','c']);
$multis= Test::create(['d','i','s','c' => $multis]);
他们都不是工作...
答案 2 :(得分:0)
您必须添加字段名称作为数组的键,然后将所有数据定义到不同的变量中,这样才能起作用。
$multis1 = implode(',', $request->d);
$multis2 = implode(',', $request->i);
$multis3 = implode(',', $request->s);
$multis4 = implode(',', $request->c);
$multis= Test::create(array('d' => $multis1,'i' => $multis2,'s' => $multis3,'c' => $multis4));