У меня есть вопрос о каком-то фундаментальном проектировании coredata, чтобы сделать его перспективным для моего приложения!
Вот сценарий, давайте рассмотрим разработку им модели coredata для отслеживания индекса массы тела (BMI), которыйэто только один пример, и он будет перечислен в сущности с именем: Категория.
Категория имеет следующие атрибуты:
- NSString (String) Название (вес)
- NSNumber (с плавающей точкой) upperMax (100) *
- NSNumber (с плавающей точкой) lowerMax (40) *
* Примечание. Эти верхние и нижние пределы являются полностью гипотетическими и не имеют научного обоснованиявообще, я просто использую это для моего примера!Гм ..
Другая сущность: «Трекер»
- NSDate timeStamp
- NSNumber entry
для многих существует здесь связь -Category<--->>Tracker
.
До сих пор здесь все хорошо поняли.Пользователь вводит трекер с меткой времени и вводит значение (текущий записанный вес), затем приложение сравнивает его, выше или ниже, или между (нормальными) предустановленными значениями в категории.
Что, если я добавлю другоекатегория - индекс массы тела (ИМТ).ИМТ сравнивает вес с ростом.
Я легко могу добавить их в качестве новой категории в Entity как:
- Имя ИМТ
- UpperMax 23,5
- LowerMax 18.5
и пользователь добавит записи дорожек, которые сравнивают их.
Но я хочу иметь возможность добавлять вес и рост, а не индекс BMI сам по себе, это создаетсценарий, в котором пользователь будет вводить значения в два текстовых поля.
наиболее очевидным ответом было добавление еще одной записи в категорию под названием «Высота», но затем мне пришлось бы создать новую, чтобы связать ее с ИМТ..
Вместо этого я задаюсь вопросом о новом подходе к созданию сущности категории таким образом, чтобы значения Entry могли быть заданы пользователем.например.(Вес в «Весе») = обязательное поле ввода текста - ОДИН eg2.(вес и рост в «ИМТ») = требуется текстовое поле ввода ДВА.
Может быть, я должен создать новую сущность?с именем «fields» и сохраните категорию и укажите нормальные значения количества обязательных полей в этой новой сущности.
Сейчас довольно расплывчато, надеюсь, вы понимаете, о чем я спрашиваю.
С точки зрения пользователя: я хочу иметь возможность добавлять «настраиваемые» категории в приложение во время выполнения.Как и при создании «новой» категории, я добавлю поля «Имя» и «Добавить» в категорию с помощью кнопки «Добавить» в tableView.
В ИМТ я добавлю два поля Имя: 1-ВесUpperMax / LowerMax и т. Д. 2-высота и т. Д.
Затем, когда я нажимаю «Новые записи для отслеживания роста», должны появиться два textFields в зависимости от количества полей Category.fields (отношение).
Это правильный подход?и как я должен соединять сущность «Категория» с сущностью «Вступление».Я получил объект "Поля" где-то посередине