I ran into the very same issue today. Turns out SwiftData does not support force-unwrap in Predicate. So you can try using if-let or .flatMap.
Using if-let worked for me, so something like this may work for you:
private struct TransactionItemsView: View {
init(journal: Journal, budgetMode: Bool) {
let journalID = journal.id!
_entries = .init(filter: #Predicate {
if let journal = $0.journal, let id = journal.id {
id == journalID
} else {
false
}
}, sort: \.date, order: .reverse)
}
@Query var entries: [Entry]
...
}
I did submit feedback on this: FB13202879
Topic:
UI Frameworks
SubTopic:
SwiftUI
Tags: