Buscando com @FetchRequest
Carregue objetos gerenciados diretamente nas visualizações.
Buscando com @FetchRequest é uma aula grátis de SwiftUI Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de SwiftUI Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de SwiftUI Academy inclui 4 aulas no total.
Partes desta aula ainda não foram traduzidas e aparecem em inglês.
Reading Records in Views
To show saved data, a SwiftUI view needs to fetch it from Core Data and re-render whenever that data changes.
The @FetchRequest Wrapper
The @FetchRequest property wrapper runs a query for an entity and keeps the results live and current for you.
@FetchRequest(sortDescriptors: []) var tasks: FetchedResults<Task>What You Get Back
Results arrive as FetchedResults, a collection you can loop over just like an array inside your view body.
Showing Them in a List
Drop the results straight into a List with ForEach to render one row per stored record.
List(tasks) { task in
Text(task.title ?? "Untitled")
}Sorting the Results
Pass sortDescriptors so rows arrive in a predictable order instead of a random one.
@FetchRequest(sortDescriptors: [SortDescriptor(\.title)]) var tasks: FetchedResults<Task>Filtering with a Predicate
Add an NSPredicate to fetch only the records that match a rule, like done items or a search term.
@FetchRequest(sortDescriptors: [], predicate: NSPredicate(format: "isDone == true")) var done: FetchedResults<Task>It Stays Live
@FetchRequest watches the context, so when you add or delete a record the view updates automatically. ⚡
It Needs the Context
@FetchRequest reads the context from the environment, so the value you injected in the stack must be present.
Handling an Empty Result
When the fetch returns nothing, show a friendly empty state instead of a blank screen.
if tasks.isEmpty {
Text("No tasks yet")
}Optional Attributes
Core Data attributes are often optional in Swift, so unwrap them safely before you display their values.
Declare It as var
Declare a @FetchRequest property as var, since the wrapper updates its stored results as the data changes.
Quick Check
You wired up @FetchRequest. A quick check on how it behaves.
Recap
You used @FetchRequest to pull records into a view, sort and filter them, and let the list refresh itself as data changes. ✨
Perguntas Frequentes
A aula “Buscando com @FetchRequest” é grátis?
Sim — o texto completo de “Buscando com @FetchRequest” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de SwiftUI Academy, atualize para CoddyKit PRO. O curso de SwiftUI Academy inclui 4 aulas no total.
O que vou aprender em “Buscando com @FetchRequest”?
Carregue objetos gerenciados diretamente nas visualizações. Você pratica SwiftUI Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar SwiftUI Academy?
Nenhuma experiência prévia é necessária. SwiftUI Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.
Quanto tempo leva a aula “Buscando com @FetchRequest”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de SwiftUI Academy?
Sim. Cada aula de SwiftUI Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- A Pilha do Core Data
- Buscando com @FetchRequest
- Criando e Salvando Entidades
- Predicados e Descritores de Ordenação