Ios 具有求和函数的核心数据派生属性

Ios 具有求和函数的核心数据派生属性,ios,sql,core-data,derived-attribute,Ios,Sql,Core Data,Derived Attribute,我的应用程序中有两个实体:用户和费用。用户有很多费用。作为属性的费用金额(类型为Int32) 我在用户上添加了一个派生属性expensesCount(类型为Int16),以使用派生费用来计算费用的数量。@count。它工作正常,应用程序编译、启动,当我保存关系时,ExpenseSunt属性的值会更新 我还向用户添加了一个派生属性expensesAmount,以计算所有相关费用的总额。我使用派生的费用.amount.@sum。应用程序已编译,但在启动时崩溃,出现以下错误: *** Terminat

我的应用程序中有两个实体:
用户
费用
。用户有很多费用。作为属性的费用
金额
(类型为Int32)

我在用户上添加了一个派生属性
expensesCount
(类型为Int16),以使用派生
费用来计算费用的数量。@count
。它工作正常,应用程序编译、启动,当我保存关系时,ExpenseSunt属性的值会更新

我还向用户添加了一个派生属性
expensesAmount
,以计算所有相关费用的总额。我使用派生的
费用.amount.@sum
。应用程序已编译,但在启动时崩溃,出现以下错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'currently unsupported (unsupported function on to many (not count or sum))'
知道为什么吗


PS:我还尝试了Twitter上推荐的另一种语法
sum:(expenses.amount)
,但我遇到了同样的崩溃:

我尝试了一个具有相同关系和派生属性的测试项目,它很有效。我不知道为什么它对你不起作用——也许是你正在运行代码的iOS版本?我正在用iOS 14.0进行尝试。或者可能是
amount
的属性类型?我试了两次。谢谢@Tom。我正在运行ios14.2&使用Xcode 12.2。下面是我发送给苹果反馈助手的一个示例项目:。根据我的理解,只能对一对多关系使用
@sum
函数,而不是多对多关系。在我的示例项目中,您将看到派生属性使用多对多关系。让我知道你是否重现了你这边的错误(可能是错误、功能改进、错误消息…),我明白了。从你的问题听起来,你有一对多的关系,而不是多对多的关系。不幸的是,这似乎就是原因。如果你不能切换到一对多,那么在苹果修复框架之前,你很可能就不会使用这种技术。当我问这个问题时,我根本无法使用@sum函数。我尝试了各种方法,直到成功,我发现这可能是由于所涉及的关系类型。这仍然是一个假设,但我希望苹果的反馈会得到核实。