我有一个奇怪的问题,我似乎无法解决。我有一个复选框:
{!! Form::checkbox('createDatabase', '1', true) !!}
当我提交表单时,它会在检查时给我一个空字符串。 除非我提交表单并在其他字段上获得验证错误,然后我重新提交,然后我得到'1'。
我已经尝试使用true而不是其他值和其他值,但似乎没有任何效果。
我以前做过很多次这很奇怪,之前从未有过这个。
编辑:控制器代码
public function store(NewProjectRequest $request)
{
dd($request->createDatabase)
//some more code over here but it's not related
}
答案 0 :(得分:0)
我认为您需要在控制器的存储方法中使用以下代码:
public function store(NewProjectRequest $request)
{
Database::create($request->all());
return $database;
}
以上假设这是您正在创建的具有模型的“数据库”对象。 $ request-> all()是(您可能已经知道)表单中的所有输入如何保存为Database对象。
如果您以这种方式执行操作,请确保已将所有输入设置为可在模型中指定的质量:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Database extends Model
{
protected $fillable = [
'createDatabase',
'otherInputNames'
];
}
答案 1 :(得分:0)
感谢您的所有意见和帮助。
经过几个小时的紧张调试后,我能够解决问题。它与刀片或我的输入字段以及所有内容无关。
我的表单在第一个字段上自动完成,这是一个唯一的代码。每个键(带去抖)我检查数据库中是否存在该代码。如果该字段不存在,则清空表单的所有字段,包括显示的复选框。
因此,通过排除该调用的复选框,一切都已解决。
再次感谢所有输入!