Форум программистов, компьютерный форум CyberForum.ru

Objective-C

Войти
Регистрация
Восстановить пароль
 
Mr_vanDort
1 / 1 / 0
Регистрация: 14.11.2012
Сообщений: 10
#1

Archiving referenses - Objective-C

04.05.2013, 00:16. Просмотров 543. Ответов 4
Метки нет (Все метки)

Здравствуйте, такая проблема:
мне нужно сохранять не сам объект а ссылки на него.
Например есть класс Library в нем два массива книг и читателей.
Есть соответственно классы Book и Person. У человека массив взятых книг . У книги указатель на человека который ее взял.Так вот я архивирую это с помощью encodeWithCoder начиная с рутового объекта библиотека. И проблема в том: как архивировать так чтобы потом в Person-aх оставались ссылки на разархивированные книги а у книг ссылки на разархивированных Person-ов. Где можно почитать про такое потому что в доке вроде нету... ну или я неправильно искал.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.05.2013, 00:16     Archiving referenses
Посмотрите здесь:

Oracle - создание базы...ORA-07287: soagdi: unsupported device for log archiving. - Oracle
На этапе создания базы возникает ошибка:ORA-07287: soagdi: unsupported device for log archiving. Все каталоги в соответстви с PIFfile...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
04.05.2013, 01:53     Archiving referenses #2
Поле id в справочники добавить.
Mr_vanDort
1 / 1 / 0
Регистрация: 14.11.2012
Сообщений: 10
04.05.2013, 13:38  [ТС]     Archiving referenses #3
Цитата Сообщение от mobidevelop Посмотреть сообщение
Поле id в справочники добавить.
Не совсем вас понял... можно пожалуйста по детальнее?
Vorona
Peace 2 all shining faces
667 / 529 / 45
Регистрация: 05.03.2010
Сообщений: 1,273
04.05.2013, 17:56     Archiving referenses #4
имеется ввиду, что все связи организуются через некие уникальные ключи, у каждого объекта есть свой уникальный id, и по этому id мы будем получать объект.

Например, есть класс Person и у него будет поле long id, когда создаете объект, вы увеличиваете id на единицу.
Таким образом у каждого объекта типа Person будет свой уникальный айди и так далее у всех классов будет поле id.

Теперь библиотека, в библиотеку ходит куча народу, да и каждый человек может посещать множество библиотек, итак тут прорисовывается связь many-to-many.
Теперь встал спорный вопрос, как лучше организовать такую связь. Один из вариантов это хранить массив с айдишниками людей в каждом объекте библиотеки. Я считаю, что этот вариант не по-феншую вплане поддержки при добавлении и удалении объектов, и самое главное, если в будущем придется прикруть ОРМ, вам прийдется полностью переделывать свою модель.
Потому я советую второй вариант - это создать промежуточную сущность LibraryPerson, у которой будет всего два поля - personId и libraryId, хотя возможно и еще какие-то поля, как на скриншоте.

Написал все это, потому что у самого была куча вопросов, как лучше организовать модель, когда учился, а когда нужно было использовать разные ОРМ, понял на практике как, все-таки, стоит и не стоит делать.
Миниатюры
Archiving referenses  
zulkis
681 / 608 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
04.05.2013, 18:46     Archiving referenses #5
Цитата Сообщение от Vorona Посмотреть сообщение
Потому я советую второй вариант - это создать промежуточную сущность LibraryPerson
Ну это решение одно из основных в обычном табличном представлении, когда используется many-to-many, так что именно так ТС'у и стоит поступить.
Цитата Сообщение от Vorona Посмотреть сообщение
Один из вариантов это хранить массив с айдишниками людей в каждом объекте библиотеки.
Это неверно с точки зрения отношения человека и библиотеки.
Как будто бы отсутствует звено - картотека.
Именно этой "картотекой" и будет являться LibraryPerson.

Mr_vanDort, так что Vorona все правильно Вам посоветовал.
Yandex
Объявления
04.05.2013, 18:46     Archiving referenses
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru