当我尝试保存或更新模型时,对于 spid_id 字段,出现以下错误。我不确定出了什么问题。
一般错误:1366 不正确的整数值:第 1 行的列 'spid_id' 的 ''(SQL:更新
magazines集spid_id= ,updated_at= 2016-10-21 08:28:46,summary= whereid= 8)
这是我的桌子的样子:
Schema::create('magazines', function (Blueprint $table) {
$table->increments('id');
$table->string('name');
$table->string('visual_id')->nullable();
$table->integer('spid_id')->nullable();
$table->timestamps();
});
Run Code Online (Sandbox Code Playgroud)
我试图通过进行迁移将我的 spid_id 更改为在数据库中不可为空,因为我认为这可能是一个原因:
Schema::table('magazines', function (Blueprint $table) {
$table->integer('spid_id')->change();
});
Run Code Online (Sandbox Code Playgroud)
但是该字段仍然可以为空。
这是我创建表单的商店功能:
$magazine = Magazine::create([
'name' => $request->input('name'),
'visio_link_prefix' => $request->input('visio_link_prefix'),
'spid_id' => $request->input('spid_id'),
'summary' => $request->input('summary'),
]);
Run Code Online (Sandbox Code Playgroud)
spid_id在保存之前,您需要检查您的请求中是否存在。例如,在您的情况下,它看起来像:
'spid_id' => $request->has('spid_id') ? $request->input('spid_id') : NULL,
Run Code Online (Sandbox Code Playgroud)