iOS NSPredicate 上的深对多关系
<p><p>我正在尝试检查一个字符串是否包含我的搜索字符串(例如“cr”)。</p>
<p>我有一个对象 <strong>A</strong> 有多个对象 <strong>B</strong>,<strong>B</strong> 有一个 <code>NSArray</code>(命名数组) <code>NSDictionary</code>.</p>
<p><code>NSDictionary</code> 有 2 个键:<strong>@"desc"</strong> 和 <strong>@"action"</strong>。</p>
<p>我想获取“A”的所有对象,其中至少一个 desc 键包含我的 searchString“cr”。</p>
<p>我试过了:</p>
<pre><code>NSPredicate *searchStringPredicate = %@).@count > 0)", @"cr"];
</code></pre>
<p>但我不断收到 <strong>EXC_BAD_ACCESS(代码=2,地址=0x0):</strong></p>
<pre><code>NSArray *fetchedObjects = ;
</code></pre>
<p>你知道发生了什么吗?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>如果 <code>A</code> 与 <code>B</code> 有关系并且 <code>B</code> 有一个 <code>transformable</code> <code>NSArray</code>(命名为<code>array</code>)的字典作为属性,那么您不能执行获取请求来询问<code>array</code>的内容。</p>
<p><code>可转换</code>数据以二进制形式存储在数据存储中,因此在将其读入内存并解码之前,您无法访问它。</p>
<p>如果您需要能够使用 fetch 请求,那么您需要将字典数组转换为与另一个实体的关系(一旦您这样做了,子查询的语法看起来是错误的)。</p></p>
<p style="font-size: 20px;">关于iOS NSPredicate 上的深对多关系,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/23104415/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/23104415/
</a>
</p>
页:
[1]