2012-01-25 3 views
0

У меня есть вопрос о каком-то основополагающем проектировании coredata, чтобы сделать это будущим доказательством для моего приложения!Нужно руководство для проектирования модели Coredata

Существует сценарий, позволяющий рассмотреть возможность создания модели coredata для отслеживания индекса массы тела (BMI), который является лишь одним примером, и он будет указан в сущности с именем: Категория.

Категория имеет следующие атрибуты:

  • NSString (String) Название (вес)
  • NSNumber (поплавок) upperMax (100) *
  • NSNumber (поплавок) lowerMax (40) *

* Примечание: те верхние и нижние пределы являются полностью гипотетическими и не имеют научной основы вообще, я просто использую его для моего примера! гм ..

Другой Entity: "Tracker"

  • NSDate TIMESTAMP
  • NSNumber запись

ко-многим существует здесь - Category<--->>Tracker.

Uptil здесь, все хорошо понято. Пользователь вводит трекер с отметкой времени и вводит значение (текущий зарегистрированный вес), приложение затем сравнивает, если оно указано выше или ниже или между (обычным) заданным значением в категории.

Что делать, если я добавляю другую категорию - индекс массы тела (ИМТ). BMI сравнивает вес с высотой.

я могу легко добавить их в качестве нового cateogry в Сущности, как:

  • Имя BMI
  • UpperMax 23,5
  • LowerMax 18,5

и пользователь добавит записи трека, который сравнивает два.

Но я хочу, чтобы иметь возможность добавлять вес и высоту, а не индекс BMI, он создает сценарий, в котором пользователь вводит значения в два текстовых поля.

Наиболее очевидным ответом было добавить еще одну запись в категории под названием «Высота», но тогда мне пришлось бы создать новую, чтобы связать ее с ИМТ.

Вместо этого им интересно узнать о новом подходе к проектированию объекта cateogory таким образом, чтобы значения Entry могли быть заданы пользователем. например. (вес в «вес») = требуемый ввод текстового поля - ONE eg2. (вес и высота в «BMI») = требуемый ввод текстового поля - ДВА.

Может быть, я должен создать новую сущность? с именем «поля» и сохранить категорию и указать нормальные значения числа обязательных полей в этом новом сущности.

Его довольно расплывчатое прямо сейчас надеется, что вы получите представление о том, что я спрашиваю.

С точки зрения пользователя: Я хочу иметь возможность добавлять «настраиваемые» категории в приложение во время выполнения. Как и при создании «новой» категории, я добавлю поля «Имя» и «Добавить» в категорию с помощью кнопки «добавить» в таблицеView.

В BMI, я добавлю два поля Имя: 1-Вес UpperMax/LowerMax и т.д. 2-высота и т.д ..

Затем, когда я нажимаю "новые Entrys для отслеживания роста" должны появиться два TextFields основанный на подсчете категорий. поля (отношения).

Это правильный подход? и как я должен подключать объект «Категория» к объекту «Ввод». Я получил объект «Поля» где-то посередине

+1

Если я вас правильно понял, вы пытаетесь взвесить ваши варианты ли вы должны использовать четко определенный CoreData полей (лица), по сравнению с созданием таблицы где вы определяете свои поля через строки в таблице? Если это так, я бы основывал свой ответ на том, сколько раз вы планируете добавлять или изменять определения полей. Строки проще добавлять, изменять и удалять, но с ними может быть немного сложнее работать. Фактические поля являются более определенными и с ними легче работать. – Brain2000

+0

Я хочу иметь возможность добавлять «настраиваемые» категории в приложение во время выполнения. Как и при создании «новой» категории, я добавлю поля «Имя» и «Добавить» в категорию с помощью кнопки «добавить» в таблицеView. В BMI, я добавлю два поля Имя: 1-Вес UpperMax/LowerMax и т.д. 2-высота и т.д .. Затем, когда я нажимаю «новые Entrys для отслеживания роста» Два TextFields должна появиться на основе подсчета категорий. (отношения). Правильно ли это? и как я должен подключать объект «Категория» к объекту «Ввод». Я получил объект Fields где-то посередине. – user134611

+0

Да, то, что вы описываете, звучит как правильный путь. Чтобы добавить настраиваемые категории во время выполнения, просто добавьте строки в таблицу категорий. Чтобы связать их, создайте объект отношений между таблицами категорий и записей. Тогда каждый объект записи, который у вас есть, будет иметь связанную категорию. И каждый объект категории будет иметь массив записей. Имеет ли это смысл? – Brain2000

ответ

Смежные вопросы