Laravel模型创建时id = 0

时间:2017-08-18 07:29:14

标签: php mysql laravel eloquent laravel-5.2

我有滔滔不绝的问题。 这是一些代码:

$BaseTask = $TaskClass::create([
        'user_id' => $User->id,
        'task_type' => $this->task_type,
        'name' => $this->settings['name'],
        'task_' . $this->social_network . '_list_id' => $task_list_id,
]);
$BaseTask->accounts()->attach($account_id);

问题是 SOMETIMES 最后一行失败并且外键约束失败 - 它尝试用查询更新数据透视表

insert into pivot ('account_id', 'task_id') values (289530, 0))

所以不知何故:

$BaseTask->id=0;

但我有财产:

$incrementing=true;

也许有人遇到这样的问题,任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:1)

我也遇到过同样的问题,您需要输入:

testpassword

在模型上。

答案 1 :(得分:0)

使用save()方法,因为您没有多对多的关系。如果你确实有多对多使用sync()函数那么。另请转到database.php文件集mysql strictfalse