我正在尝试更新SwiftData中的数据。然而,文档实际上只是:
func update(expressions: [String : NSExpression],
model: any PersistentModel.Type,
where predicate: NSPredicate? = nil) throws -> Bool
作为一个新的开发人员,我不知道这意味着什么或如何使用它。我的代码如下:
try? context.update(expressions ["teamScores":NSExpression(format: "\(teamScores)")],
model: CounterModel.self)
失败的原因是exception of type NSException
。
老实说,我没能尝试太多。由于这样一个新的框架已经在6天前发布,因此除了建立模型、持久化数据和查询数据库之外,没有太多的文档或示例。
1条答案
按热度按时间h79rfbju1#
要更新数据,您可以通过
@Bindable
直接绑定到对象并更改所需的值。然后,更改应自动保存/持久化。查看Build an app with SwiftData会话(在4:11)。代码基本上可以归结为:
PS:在这个例子中,Item 是通过主视图中的
@Query
获取的,并传递给这个 EditorView。