Вложенные массивы в Realm с помощью Swift - PullRequest
0 голосов
/ 15 октября 2018

Я прочитал несколько примеров на SO о том, как хранить массивы данных в Realm.Тем не менее, я не нахожу особо четкого примера.

Короче говоря, у меня есть (упрощенный) JSON, как показано ниже, который я хотел бы сохранить в Realm.Как я могу добавить массив ингредиентов в Realm, чтобы он содержался в массиве menuItems?

{
   "menuItems": [
      {
         "name": "name 1",
         "ingredients": ["ingredient 1", "ingredient 2"]
      },
      {
         "name": "name 2",
         "ingredients": ["ingredient 1", "ingredient 2", "ingredient 3"
         ]
      }
   ]
}

У меня настроены мои модели областей:

class MenuItemsRealm: Object {

    @objc dynamic var name: String = ""
    var ingredients = List<IngredientItemsRealm>()
}

class IngredientItemsRealm: Object {

    @objc dynamic var ingredientItem: String = ""
} 

1 Ответ

0 голосов
/ 15 октября 2018

В вашем JSON вы указываете, что объект menuItem имеет свойство / переменную с именем ingredients и содержит массив String.Что вы, вероятно, хотите сделать, это создать массив объектов , который содержит конкретное свойство / переменную ingredientItem.

Примером вашего JSON будет что-то вроде этого:

{
   "menuItems": [
      {
         "name": "name 1",
         "ingredients": [
             {
                 "ingredientItem": "item name"
             }
         ]
      }
   ]
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...