显然,我的所有create函数都无法正常工作,它们都会不断抛出:
SQLSTATE[23000]: Integrity constraint violation: 1048 Column
'actionable_id' cannot be null (SQL: insert into `action_events`
(`batch_id`, `user_id`, `name`, `actionable_type`, `actionable_id`,
`target_type`, `target_id`, `model_type`, `model_id`, `fields`,
`status`, `exception`, `updated_at`, `created_at`) values (8db303d9-
39ca-4858-8d59-30ec1cd51cb7, 1, Create, App\Models\Site, ?,
App\Models\Site, ?, App\Models\Site, ?, , finished, , 2019-05-16
09:47:12, 2019-05-16 09:47:12))
基本上说'actionable_id' can not be 'null'
。
这是我桌子的一个例子:
$table->bigIncrements('id');
$table->string('guid')->unique();
$table->string('site_title');
$table->string('site_contents')->nullable();
$table->integer('record_priority')->default('0');
$table->integer('record_state')->default('1');
$table->string('created_by');
$table->string('updated_by')->nullable();
$table->softDeletes();
$table->timestamps();
我用guid
生成了trait
,但是为了使这项工作有效,我什至手动尝试了,没有运气。
当我使用tinker
创建它时,它就可以正常工作。
答案 0 :(得分:0)
我禁用了特征的自动递增功能,这阻止了模型为记录生成ID,这是我的问题所在:
public function getIncrementing()
{
return false;
}
将其删除或进行以下更改可解决该问题:
public function getIncrementing()
{
return true;
}
在使用Nova时,请事先防止或手动创建它。