は私がQuestion
とAnswer
と呼ばれる2つのエンティティを作成しました:コアデータの多くのキーをソートする方法は?次のように
は今、私はある時点で、両方のエンティティでいくつかのデータを保存します。そのコードは正常に動作しています。
さて、私はその答えを質問を取得したいので、次のように、私はコードを使用します。
class func getAllQuestions(inManagedObjectContext context: NSManagedObjectContext) -> [Question] {
let request = NSFetchRequest<NSFetchRequestResult>(entityName: "Question")
let sortDescriptor = NSSortDescriptor(key: "question_id", ascending: true)
let sortDescriptors = [sortDescriptor, answerDescriptor]
request.sortDescriptors = sortDescriptors
if let questions = (try? request.execute()) as? [Question] {
return questions
}
return []
}
をあなたは私が質問をフェッチするためにコードを書いていると私は、自動的に関連する答えを得たことを見ることができるように特定の答えに。
私の要件:
しかし、私は、質問と回答は、自動的に追加され得る、私は答えがdisplay_orderでソートされたいです。
教えてください。どうすればNSSortDescriptor
を追加できますか?
私が試したことはありますか?
私はこの種の記述しようとしている:
let answerDescriptor = NSSortDescriptor(key: "answers.display_order", ascending: true)
をしかし、私は、ランタイムエラーを取得:
<NSSQLFetchRequestContext: 0x600000381110> , to-many key not allowed here with userInfo of (null)
コードで回答を並べ替えることができます。エラーで説明されているように、回答の表示順序に基づいて質問を並べ替えることはできません。 – pkallu
そのコードは混乱しています。単一の 'Question'をフェッチしていますが、その結果に対してソート記述子を使用したいとしますか? –
@TomHarrington私は1つの質問をフェッチしません。私は一連の質問を取ります。私が質問をするとき、私はまた、各質問の回答を並べ替えることを望む。 – Vishal