1

我正在使用 Laravel 和 Ardent,并且在通过 hasMany 关系保存时遇到问题。

我有两节课。

工作指示:

protected   $table          = 'workorder';
protected   $primaryKey     = 'workorder_id';
public static $relationsData = [
    'dates'         => array(self::HAS_MANY, 'App\WorkOrderDate', 'foreignKey' => 'workorder_id'),
];

工单日期:

protected   $table          = 'workorder_date';
protected   $primaryKey     = 'date_id';
public static $relationsData = array(
    'workorder'  => array(self::BELONGS_TO, 'App\WorkOrder')
);  

保存我的工作订单(工作正常)后,我试图通过执行保存日期模型的集合:

$workorder->dates()->saveMany($myDateCollection->all());

但它没有运行日期插入,也没有给我任何错误。我打开了查询日志,看起来 Laravel 正在尝试运行更新而不是插入。我是否在这里错误地定义了我的关系?

4

1 回答 1

1

我正在根据用户输入对我的日期集合进行水合,当您对模型进行水合时,Laravel 会假设该模型已经存在。原来这不是我的意思。

更多细节在这里: https ://github.com/laravel/framework/issues/9360

于 2016-03-17T23:19:31.567 回答