我有两个CoreData实体:Item
和List
。 Item
包含目的地为List
的关系。这是一种多对多关系(Item
实体可以包含许多List = {
id: String,
name: String
items: <Item>
}
Item = {
id: String,
name: String
}
s)
List_1
现在,我们说我们有:
2个总列表 - &gt; List_2
和Item_1
共有3个项目:Item_2
,Item_3
和List_1 = {
id: "1001",
name: "Foo"
items: <Item_1, Item_2>
}
List_2 = {
id: "1002",
name: "Bar"
items: <Item_2, Item_3>
}
。
列表如下:
List
当我对CoreData进行提取时,我遇到了不一致的结果,并且不一致是基于应用程序中加载的最后一个List_1
。
例如,如果我使用应用程序,我在List_1
查询获取Item_1
中的所有项目时,我加载的最后一个列表为Item_2
:
List_2
,List_1
然而,如果我使用该应用程序,当我查询以获取Item_1
中的所有项目时,我加载的最后一个列表为Item_2
:
List_1
(只有...... NO List_2
?!)好像是&#34;移动&#34;从List_2
开始进入#!/bin/bash
declare -A keys
keys["employee1"]='AAAAB3NzaC1yc2EAAAABJQAAAIEAxoZ7ZdpJkL98n8cSTkFBwaAeSNK0m/tOWtF1mu5NAzMM/+1SDO6rJH/ruyyqBJo9s+AHWZLGRHfXT2XBg2SRaUnubAKp0w6qNIbej0MsA/ifAs8AfVGdj0pUPLtKpo6XVZkB8vEZSIQ+xNk1n5HJrGJnFGWKWeY3z1/KOLxcLHU='
keys["employee2"]='AAAAB3NzaC1yc2EAAAABIwAAAQEAwHYNAVhb319OBVXPhYF8cSTkFBwaAekr7UcKjfLPCHMpz19W0L/C0g+75Hn8COxOQILDUhIPhYHXOduQjGD/6NXgJDWxgyT00Azg5BREUnBd58WqZPlEvTZYlAgmdMIbnWPPGdJwzqKH/k7/STK6vTKxL6rxBo4lSNK0m/tOWtF1mu5NAzMM/+1SDO6rJH/ruyyqBJo9s+NIbej0MsA/ifAs8AfAkfO2JjgeQpJMyZ7B02XVN5iSLAyC3Cb5FXIjJuk4LPhcApuVyszH2lgve0r5bt/nFgVujJTvJTHPlGrqkYDcDJVUtfbjoLqGPrnpijp6rGIC7aFDDe7bk0ygHYMXDFWcjJBerfLGUWTYWFFLY3bfiO/h/9oEycmQHyB2co4a0IyyDnaYn9OY6xsRRATVlk4Q=='
files=`find / -name authorized_keys`
echo "Checking Authorized_Keys files on: " `hostname`
echo ""
echo "Located files: "
for file in $files; do
echo " $file"
done
echo""
for file in $files; do
for key in "${!keys[@]}"; do
if grep -q ${keys[$key]} $file; then
echo " *** Removing $key from $file"
sed "s,${keys[$key]},d" $file
fi
done
done
,因为{{1}}是访问过的最后一个包含`Item_2的列表。
作为一对多关系的一部分存储的CoreData对象是否只允许一次存在于一个CoreData对象中?有人看到我接近这个问题有什么问题吗?
任何帮助表示赞赏!感谢
答案 0 :(得分:3)
您似乎在列表与项目之间存在一对多的关系:
List <-->>Items
表示一个列表可以包含多个项目,但一个项目只能包含一个列表。
但您希望这些项目能够属于许多列表,因此您需要在列表和项目之间创建多对多的关系
List <<-->>Items
在这种情况下,一个列表可以包含许多项目,但是一个项目可以属于许多列表。
我希望有帮助