0
moveRowAtのオブジェクトリストをcoreDataに保存しようとしています。私はシングルトンで自分のデータを保存していますが、順序は整っていますが、コアデータを更新すると保存されず、順序が間違っています。コアデータの更新結果の値
func changeKrakenPosition(source: Int, destiny: Int){
let context = appDelegate.persistentContainer.viewContext
do {
var results = try context.fetch(fetchRequest)
var source = source
var destiny = destiny
var destinyItem = results[destiny]
var sourceItem = results[source]
if source < destiny {
var dif = destiny - source
for i in 0...dif {
if i != dif {
var krakenCoreDataToMove = results[source+1]
results[source] = krakenCoreDataToMove
source += 1
} else {
results[source] = destinyItem
}
}
results[destiny] = sourceItem
} else if destiny < source {
var dif = source - destiny
for i in 0...dif {
if i != dif{
var krakenCoreDataToMove = results[source-1]
results[source] = krakenCoreDataToMove
source -= 1
} else {
results[source] = destinyItem
}
}
results[destiny] = sourceItem
} else {
//Moved to same position
}
var resultKra = results as! [Kraken]
for res in resultKra {
print("name: \(res.name) age \(res.age)")
}
do {
try context.save()
}catch{
//Handle Error
}
} catch {
print("Error with request: \(error)")
}
}
それがうまく動作しますが、保存されません初めて、私は再び入り、私は最後の位置に新しい最初の項目を移動し、これは
を何が起こるかでありますCoreDataで保存すると思います。solv問題はありますが、どんな助けや解決策も素晴らしいでしょう。
おかげで、私はコンテキストに注文した新しい結果を保存し、私がフェッチされた結果の配列を変更する必要があれば、私は知らない私のデータを保つために何をしたいか、何をしなければなりません他の何かが私はコアデータに保存することはできません –
ください、この記事を確認してください。 https://stackoverflow.com/questions/11600571/what-is-the-best-way-to-sort-a-core-data-entity – Alexkater