0Pricing
SwiftUI Academy · レッスン

モデルコンテナとコンテキスト

modelContainerでストレージを設定します。

「モデルコンテナとコンテキスト」はCoddyKit上の無料SwiftUI Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSwiftUI Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 SwiftUI Academyコースには全4レッスンが含まれています。

このレッスンの一部はまだ翻訳されておらず、英語で表示されています。

What a Container Is

The model container is the engine that sets up your storage on disk. Your whole app shares one container for all its SwiftData models.

Adding the Container

Attach a container to your app with the modelContainer modifier on a scene. One line gives every view access to your saved data.

WindowGroup {
    ContentView()
}
.modelContainer(for: Task.self)

Listing Multiple Models

Pass an array to register several models at once. The container then knows about every type your app needs to save.

.modelContainer(for: [Task.self, Project.self])

What a Context Is

The model context is your working space for changes. You insert, edit, and delete through it, then it saves to the container.

Reading the Context

Grab the active context inside a view with the @Environment property wrapper. SwiftData injects it for you automatically.

@Environment(\.modelContext) private var context

Inserting an Object

Call insert on the context to start tracking a new object. From this point SwiftData watches it for saving.

context.insert(Task(title: "Buy milk"))

Automatic Saving

SwiftData usually autosaves changes for you at smart moments. You rarely need to save by hand in a simple app.

Saving Manually

When you need certainty, call save on the context to write changes right now. It is handy before a critical step.

try context.save()

In-Memory Containers

Set isStoredInMemoryOnly to true for a throwaway store. It is perfect for previews and tests that should not touch the disk.

let config = ModelConfiguration(
    isStoredInMemoryOnly: true)

Custom Configuration

A ModelConfiguration lets you tune where and how data is stored. You pass it when building a container by hand.

let container = try ModelContainer(
    for: Task.self, configurations: config)

One Container, Many Views

Because the container lives at the app level, every view shares the same data. Edits in one screen show up everywhere instantly.

Quick Check

Quick check on container and context.

Recap: Container & Context

You set up storage with modelContainer, then insert and save through the context from @Environment. Your app can now read and write data. ✅

よくある質問

「モデルコンテナとコンテキスト」レッスンは無料ですか?

はい。「モデルコンテナとコンテキスト」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、SwiftUI Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 SwiftUI Academyコースには全4レッスンが含まれています。

「モデルコンテナとコンテキスト」で何を学びますか?

modelContainerでストレージを設定します。 ブラウザで直接実行するハンズオンコードでSwiftUI Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

SwiftUI Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSwiftUI Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「モデルコンテナとコンテキスト」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSwiftUI Academyレッスンでコードを書いて実行できますか?

はい。すべてのSwiftUI Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. @Model型を定義する
  2. モデルコンテナとコンテキスト
  3. @Queryでクエリを実行する
  4. 挿入、更新、削除
← SwiftUI Academyに戻る