удаляя несколько элементов одновременно в локальной базе данных в swift4.2 - PullRequest
0 голосов
/ 08 ноября 2019

Я использую стороннюю библиотеку, так как внутренний db.it - ​​это SharkORM. Благодаря этому я могу удалить выбранный один элемент за раз, но мое требование - мне нужно удалить несколько выбранных элементов в представлении коллекции. кто-нибудь, кто поможет мне сделать это, было бы здорово, спасибо заранее. и моя структура папок представляет собой список папок, каждая папка будет иметь коллекцию файлов изображений и список файлов PDF. Здесь я хочу удалить выбранные файлы изображений одновременно.

 class func DeleteSelectedDocuments(selectedIndexes: [Int],fileId:String){
            File.query()
            .where(withFormat: "parentIdentifier = %@", withParameters: selectedIndexes)
            .fetch()
            .removeAll()
    }

это запрос, который я написал для удаления выбранных элементов представления коллекции в папке, но эти элементы не удаляются из базы данных.

Ответы [ 2 ]

0 голосов
/ 08 ноября 2019

Согласитесь с Parth, и вот фрагмент, который может вам помочь

Employee.query()
.whereWithFormat("your criteria...", parameters: YOUR_PARAMS)
.fetch()
.removeAll()
0 голосов
/ 08 ноября 2019

Как уже упоминалось в документе:

Удаление объектов

Чтобы удалить объект из Shark, вы просто вызываете remove () onэтот объект, он удалит его из хранилища данных и стерилизует его, чтобы гарантировать, что он не может быть случайно записан позднее. Чтобы оптимизировать массовое удаление объектов, запрос может быть объединен с вызовом removeAll () в наборе результатов для удаления сразу нескольких объектов .

Ссылка: https://github.com/sharksync/sharkorm

...