[問題] 如何在寫一個request去fetch core data …
我在我的core data中有一種entityName為"Person"的entity
Person有一個attribute叫做"name"
我在程式中為了避免因同一個人而重複在core data中建立資料
所以我希望在建立新一筆資料前
可以先去core data中判斷所有的Person.name中是否已經有跟即將輸入一樣的
有的話就跳過,沒有才去建立
for example,
inputArray1中有2筆個人資料輸入, 分別是: @"John", @"Jimmy"
inputArray2中有2筆個人資料輸入,分別是:@"John", @"Alex"
如果第inputArray2的第1筆資料要輸入的時候就要判斷出
core data中已經有個person object的name叫做"John"了,所以就略過
我大概知道要寫一個NSFetchRequest:
NSFetchRequest *request = [[NSFetchRequest alloc] init];
NSEntityDescription *entity
= [NSEntityDescription entityForName:@"Person"
inManagedObjectContext:self.managedObjectContext];
[request setEntity:entity];
NSExpression *keyPathExpression = [NSExpression
expressionForKeyPath:@"name"];
但是接下來的expression我不知道該怎麼寫才能找出person name為john的
物件數量 or 是否存在
有請神人指點迷津一下了QQ
P.S.
第二問:
如果今天是想要再managedObjectContext中(而不是core data)尋找的話又該怎麼做呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.137.41.116
※ 編輯: Gsus 來自: 114.137.41.116 (08/25 17:29)
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 2 篇):
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章