Swift: как быстро объединить два результата Realm

Я запрашиваю область для двух разных ключевых слов, затем я хочу объединить эти два результата области в один, поэтому я перебираю его.

У меня есть класс объекта

class Item: Object {
  @objc dynamic var _id: ObjectId? = nil
  @objc dynamic var _partitionKey: String = ""
  @objc dynamic var productBrand: String? = nil
  

  override static func primaryKey() -> String? {
      return "_id"
    }
 }

Я приношу царства

class SearchResult : ObservableObject {
      @Published var storeitems: Results<Item>
     

    storeitems = realm.objects(Item.self).sorted(byKeyPath: "_id") 

     let p1 = self.storeitems.filter("productDescription CONTAINS '"Cheese"'")
    let p2 = self.storeitems.filter("productDescription CONTAINS '"Blue"'")
            


}

Я пытаюсь объединить p1 и p2, чтобы получить что-то вроде

 p3 = p1 + p2

как это можно реализовать с реальным результатом?

1 ответ

Вы можете настроить свой фильтр, чтобы получить то, что вы хотите, за один раз:

      
let items = storeitems.filter { item in 
    item.productDescription.contains("Cheese") || item.productDescription.contains("Blue")
} 


Другие вопросы по тегам