Нужно ли в базе данных сохранять отдельно ингредиент и продукт?
У меня есть рецепты, которые состоят из ингредиентов-> связь один ко многим.
А также есть продукты которые хранят калорийность и название. Ингредиент по факту должен хранить продукт и его количество и единицу измерения.
Мне нужно создавать таблицу для ингредиентов, и будет ли это связь один к одному?
Также для калорийности тоже нужно создавать свою таблицу, которая будет иметь связь с продуктом один к одному?
Ингредиентом, например, может быть и фарш, в котором могут быть несколько продуктов (лук, яйца, хлеб, да хоть что), я бы сделал продукт и ингредиент как "один ко многим".
И запихнул бы калорийность в "продукты".
О, мое тестовое задание) Ну, или это какая-то популярная задачка.
На самом деле эта задача не на знание структур данных, а на понимание самих данных и как они будут использоваться (сейчас и в будущем). Есть несколько стандартных исходов. В любом случае надо понять отличается ли продукт от ингредиента. По связям - лучше перестраховаться и использовать связи many-to-many для расширяемости, но если есть ограничения то их надо выяснить наводящими вопросами.
Про калорийность - это просто цифра. Она может быть вычисляемой или фиксируемой
FairyFox5700, по тому что это независимое управление связями и возможность делать управление связью без изменения самой сущности. В некоторых случаях это не нужно, но для этого надо садиться и понимать что за бизнес и как он трактует те или иные сущности, а также как проводит операции с данными