Есть ли способ работать с реальным объектом в библиотеке графов для основных данных
Я только начал играть с библиотекой, выглядит очень интересно для основных данных под названием Graph. Мне просто интересно, есть ли способ работать с реальным объектом, а не только с Entity, например:
let elon: Entity = Entity(type: "Person")
elon["firstName"] = "Elon"
elon["lastName"] = "Musk"
Я хотел бы работать с Class\Struct с именем Person с 2 свойствами: firstName и LastName. Я знаю, что могу создать Class\Struct и создать вычисляемое свойство и вернуть точное значение, но мне интересно, есть ли элегантный способ сделать это без такого большого количества стандартного кода.
2 ответа
Создать подкласс NSManagedObject
называется Person
и дать ему @NSManaged var firstName: String
имущество. Затем в вашей модели данных создайте объект с именем Person
и установить его класс Person
, Затем добавьте firstname
собственность к нему.
Наша книга содержит более подробную информацию о том, как создавать свойства, классы и т. Д., https://www.objc.io/books/core-data/ а предварительный просмотр посвящен моделированию данных: https: //www.objc..io / книги / ядро-данные / просмотр /
Таким образом, ответ, который вы получили, - это правильный метод CoreData для непосредственного использования свойств. Ваш вопрос, хотя, относительно Графа, не был дан правильный ответ с ответом выше. Самый простой способ выполнить то, что вам нравится, - создать класс-оболочку вокруг объекта Graph Entity, которым вы управляете.
Это даст вам все функции CoreData без работы, плюс элегантность непосредственного использования свойств.
Если вы собираетесь использовать Graph, я бы рекомендовал использовать его как есть, пока вы не почувствуете себя комфортно. Причина в том, что дополнительные функции, предлагаемые Graph, будут вам неловко доступны, если вы не знаете, что делаете, если начнете создавать обертки повсюду.