Docs Menu

ドキュメントの更新

項目一覧

コレクション内のドキュメントを更新するには、単一のドキュメントを取得し、Eloqueent モデルで update() メソッドを呼び出します。

クエリフィルターをwhere()メソッドに渡し、一致するドキュメントを並べ替え、最初のドキュメントのみを取得するにはfirst()メソッドを呼び出します。 次に、対象のドキュメントの変更をupdate()メソッドに渡して、一致するドキュメントをアップデートします。

Tip

Lambda 統合を使用したデータの更新について詳しくは、 書込み操作 のガイドの「ドキュメントの変更 」セクションを参照してください。

この例では、次のアクションを実行します。

  • Movie Eloent モデルを使用して、 sample_mflixデータベース内のmoviesコレクションを表します

  • クエリフィルターに一致するmoviesコレクションからドキュメントを更新します

  • 更新されたドキュメントの数を出力します

この例では、 Movieモデルで次のメソッドを呼び出します。

  • where(): titleフィールドの値が "Carol" であるドキュメントに一致します

  • orderBy(): 一致したドキュメントを _id 値の昇順で並べ替えます

  • first(): 最初に一致するドキュメントのみを検索

  • update(): imdb.rating ネストされたフィールドの値を 6.9 から 7.3 にアップデートし、imdb.votes ネストされたフィールドの値を 493 から 142000 にアップデートします。

$updates = Movie::where('title', 'Carol')
->orderBy('id')
->first()
->update([
'imdb' => [
'rating' => 7.3,
'votes' => 142000,
],
]);
echo 'Updated documents: ' . $updates;
Updated documents: 1

Lambda アプリケーションを編集して使用例を実行する方法については、使用例のランディング ページ を参照してください。

項目一覧