當我嘗試保存或更新模型時,對於字段spid_id,我得到一個錯誤信息,如下所示。我不知道什麼是錯的。Laravel - 常規錯誤:1366錯誤的整數值
General error: 1366 Incorrect integer value: '' for column 'spid_id' at row 1 (SQL: update
magazines
setspid_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();
});
我試圖改變我的spid_id不可空在數據庫中,通過進行遷移,因爲我認爲這可能是一個原因:
Schema::table('magazines', function (Blueprint $table) {
$table->integer('spid_id')->change();
});
但是該領域仍然是空的。
這是我創建的形式存儲功能:
$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'),
]);
告訴我們你在Laravel更新的地方 –
如果該值爲空,那麼不要設置密鑰。它會嘗試將數據保存爲整數(不含''s)。或者在值周圍添加引號或過濾數組。 –
您能否在發生錯誤的地方張貼代碼?所以代碼更新或保存模型? – boroboris