表格中有复选框
{!! Form::checkbox('is_explicit_content', '1', $post->is_explicit_content, ['id' => 'is_explicit_content']); !!}
{!! Form::label('is_explicit_content', 'Explicit', ['class' => 'checkbox-label']) !!}
模型
class Post extends Model
{
protected $fillable = [
'text',
'is_explicit_content'
];
}
但价值总是保存为1,我不明白为什么?如何解决?
答案 0 :(得分:5)
当提交复选框时,它的值是给定的,但是如果它未被取消,则不会发送此类表单条目。
如果勾选以下内容并提交表单,则$_POST['foobar']
设置为1
。
<input type='checkbox' name='foobar' value='1' />
如果您未加注,$_POST['foobar']
将无法使用。如果你想拥有一个默认值,你需要在复选框之前有一个隐藏的输入。
<input type='hidden' name='foobar' value='0' />
<input type='checkbox' name='foobar' value='1' />
现在,如果您提交带有foobar
未标记的表单,则$_POST['foobar']
的值将为0
。