Name:
interface
Value:
Amplify has re-imagined the way frontend developers build fullstack applications. Develop and deploy without the hassle.

Page updated Apr 30, 2024

Maintenance ModeYou are viewing Amplify Gen 1 documentation. Amplify Gen 1 has entered maintenance mode and will reach end of life on May 1, 2027. New project should use Amplify Gen 2. For existing Gen 1 projects, a migration guide and tooling are available to help you upgrade. Switch to the latest Gen 2 docs →

アプリケーションデータの作成、更新、削除

このガイドでは、Amplifyライブラリの GraphQL クライアントを使用してデータを作成、更新、削除する方法について説明します。

開始する前に、以下が必要です:

ミューテーションを実行してアプリケーションデータを作成、更新、削除する

GraphQL では、ミューテーション (mutations) はデータを作成、更新、削除するために使用される API です。これはデータを読み取るが変更しないクエリとは異なります。以下の例は、Amplify GraphQL クライアントを使用してアイテムを作成、更新、削除する方法を示しています。

アイテムを作成する

Amplify.API.mutate を使用して GraphQL ミューテーションを実行し、アイテムを作成できます。

ファイルの最上部に次のインポートがあることを確認してください:

import Amplify
func createTodo() async {
// Retrieve your Todo using Amplify.API.query
var todo = Todo(name: "my first todo", description: "todo description")
todo.description = "created description"
do {
let result = try await Amplify.API.mutate(request: .create(todo))
switch result {
case .success(let todo):
print("Successfully created todo: \(todo)")
case .failure(let error):
print("Got failed result with \(error.errorDescription)")
}
} catch let error as APIError {
print("Failed to create todo: ", error)
} catch {
print("Unexpected error: \(error)")
}
}

Amplify.API.mutate を使用して GraphQL ミューテーションを実行できます。ファイルの最上部に次のインポートがあることを確認してください:

import Amplify
import Combine
func createTodo() -> AnyCancellable {
// Retrieve your Todo using Amplify.API.query
var todo = Todo(name: "my first todo", description: "todo description")
todo.description = "created description"
let todoCreated = todo
let sink = Amplify.Publisher.create {
try await Amplify.API.mutate(request: .create(todoCreated))
}
.sink {
if case let .failure(error) = $0 {
print("Got failed event with error \(error)")
}
}
receiveValue: { result in
switch result {
case .success(let todo):
print("Successfully created todo: \(todo)")
case .failure(let error):
print("Got failed result with \(error.errorDescription)")
}
}
return sink
}

アイテムを更新する

データを更新するには、リクエストを .update に置き換えます。

try await Amplify.API.mutate(request: .update(todo))

アイテムを削除する

データを削除するには、リクエストを .delete に置き換えます。

try await Amplify.API.mutate(request: .delete(todo))

まとめ

おめでとうございます! アプリケーションデータの作成、更新、削除ガイドを完了しました。このガイドでは、GraphQL API を通じてアプリデータを作成、更新、削除しました。

次のステップ

推奨される次のステップには、API を使用してデータをクエリし、データの変更を確認するために実時間イベントにサブスクライブすることが含まれます。この作業に役立つリソースには以下が含まれます: