0

私は Laravel 5.2 で ManyToMany 関係を持っています:

ユーザーモデル:

public function Lessons(){
    return $this->belongsToMany('App\Lesson')->withPivot('created_by', 'number_of_lessons','id');
}

ただし、次のようにピボットテーブルに複数のレッスンを保存したい:

$output = [];
$output[] = $this->RidingCourses()->wherePivot('created_by',1)->first()->pivot->number_of_lessons = 200;
$output[] = $this->RidingCourses()->wherePivot('created_by',2)->first()->pivot->number_of_lessons = 200;
$this->RidingCourses()->saveMany([$output]);

ピボット レコードは更新されていますが、ピボット テーブルには 2 つの空白のレコードも作成されています。私の質問は、複数の ManyToMany 関連モデルを正しく保存するにはどうすればよいですか?

4

1 に答える 1

0

「created_by」、「number_of_lessons」、「id」がモデルで入力可能であることを確認しますか? 既存のレコードを更新しようとしていますか?

これらの列が入力可能であり、saveMany の代わりに save または create メソッドを使用するよりも同じ問題に直面している場合。

私は同じ問題に直面していて、Laracast にも同じ質問をしましたが、まだ応答がありません。

これは Laravel 5.2 のバグだと思います。

于 2016-05-11T11:18:49.997 に答える