Bird
0
0

What is wrong with this SwiftData container setup?

medium📝 Debug Q7 of 15
iOS Swift - Local Data Persistence
What is wrong with this SwiftData container setup?
let container = ModelContainer(for: [Person.self, Task.self])
let context = container.mainContext
context.insert(Person(name: "Alice"))
APerson must be a struct, not a class.
BYou cannot insert objects directly into modelContext.
CModelContainer cannot handle multiple model types.
DModelContainer initializer expects a variadic list, not an array.
Step-by-Step Solution
Solution:
  1. Step 1: Check ModelContainer initializer syntax

    ModelContainer expects a variadic list of model types, not an array.
  2. Step 2: Analyze the code

    Passing an array causes a type mismatch error; correct usage is ModelContainer(for: Person.self, Task.self).
  3. Final Answer:

    ModelContainer initializer expects a variadic list, not an array. -> Option D
  4. Quick Check:

    ModelContainer(for:) needs variadic types, not array [OK]
Quick Trick: Pass model types as separate arguments, not array [OK]
Common Mistakes:
  • Passing array instead of variadic arguments
  • Thinking modelContext disallows insert
  • Confusing class vs struct for models

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More iOS Swift Quizzes