Ios RLMArray-从对象检索数组
我的模型: Conv.hIos RLMArray-从对象检索数组,ios,objective-c,realm,Ios,Objective C,Realm,我的模型: Conv.h #import <Realm/Realm.h> #import "ConvText.h" @interface Conv : RLMObject @property NSInteger c_id; @property RLMArray<ConvText> *cts; @end #import <Realm/Realm.h> @interface ConvText : RLMObject @property NSIntege
#import <Realm/Realm.h>
#import "ConvText.h"
@interface Conv : RLMObject
@property NSInteger c_id;
@property RLMArray<ConvText> *cts;
@end
#import <Realm/Realm.h>
@interface ConvText : RLMObject
@property NSInteger ct_id;
@property NSInteger time;
@end
RLM_ARRAY_TYPE(ConvText)
出现此错误是因为幕后查询结果和关系是两种不同类型的实体,即使它们是通过同一类(RLMArray)公开的。在这种情况下,您正在调用一个关系上的查询方法(AlaySoReTyByType),并且该方法仅在查询结果上可用,当然我们也应该考虑将其添加到关系中。p> 我们计划通过以下方式解决此问题:
我们的错误消息也应该更加明确-我们会尽快修复它。您会遇到此错误,因为后台查询结果和关系是两种不同类型的实体,即使它们通过同一类(RLMArray)公开。在这种情况下,您调用的是查询方法(arraySortedByProperty)在关系上,该方法只在查询结果上可用,当然我们也应该考虑将其添加到关系中! 我们计划通过以下方式解决此问题:
我们的错误消息也应该更加明确-我们会尽快修复它。感谢您的精彩解释。另外,realm易于使用,但数据库功能强大。祝您好运!刚刚尝试调用“objectsWhere”在关系上,并以相同的异常结束。这将是很好的工作。我遇到了与zvonicek相同的问题,只是我尝试使用ObjectsWithPredicate:我们本周实际上正在进行此工作。我们的主分支中已经承诺了一些关于+更多正在进行中的工作分支的事情。我们为或者混乱!Sinde 2014-10-21他们已经将
RLMArray
分为两个类,分别关注不同的问题。这是0.87.0版本,请查看他们的版本。感谢您的精彩解释。另外,realm易于使用,但强大的DB。祝您好运!只是尝试调用“objectsWhere”在关系上,并以相同的异常结束。这将是很好的工作。我遇到了与zvonicek相同的问题,只是我尝试使用ObjectsWithPredicate:我们本周实际上正在进行此工作。我们的主分支中已经承诺了一些关于+更多正在进行中的工作分支的事情。我们为或者混乱!Sinde 2014-10-21他们已经将RLMArray
分为两个类,分别关注不同的问题。这是0.87.0版本,请查看他们的版本。
Conv *c = [Conv objectsWhere:@"c_id = %@",@(1)];
ConvText *ct = [c.cts arraySortedByProperty:@"time" ascending:NO][0]; <--
RLMArray *cts = c.cts;
ConvText *ct = [cts arraySortedByProperty:@"time" ascending:NO][0];