2011-06-25 79 views
1

我試圖建立一個像這樣的核心數據模型: 用戶 - >好友 - >相冊 - >圖片 (減號用戶,它們中的每一個都是一對多的關係)核心數據對多關係的隨機實體

我需要能夠隨機選擇X張圖片;最好是,我想避免必須隨機選擇幾個朋友,然後從這幾個專輯,最後幾張圖片 - 我的核心數據謂詞經驗是相當有限的,所以任何幫助將不勝感激!

回答

0

據我所知,在NSFetchRequest中沒有辦法「隨機訂購」。看起來像一個體面的想法,但是,所以你可能想要ask for it

關閉你可以得到的是不爲謂詞指定任何排序描述符並設置提取限制。沒有排序描述符,返回的對象將以某種可能不可預測的順序出現。

+0

是的,我想我會用setFetchLimit,並得到一組對象。然而,我的主要問題是如何設置NSPredicate以直接從圖片中提取對象。 我不想拉X號的朋友,然後從那些拉X張專輯中拉出X張圖片。我相信答案是使用SUBQUERY,但我不確定最好的方法去深入一對多的關係。 我認爲改變圖片實體以包含與'用戶'的關係,然後只需要X張圖片,但核心數據抱怨沒有與該關係相反 – Nate

0

嗯,我不太確定這個自己,但可能不是你做的有以下特點:也許在一個循環中(不要忘記刪除你使用的對象

NSSet *myFetchedPictures; 
[myFetchedPictures anyObject]; 

NSSet或者你可能會再次結束同一個對象)。

我是很新的CoreData自己,所以如果這是完全錯誤的,請讓我知道:)