taggable rtconner cviebrock database database-design

database - cviebrock - laravel rtconner laravel tagging



DiseƱo de bases de datos para almacenar recetas de alimentos. (3)

¿Una receta tiene muchos ingredientes o muchas recetas tienen muchos ingredientes?

Espero que sea lo último que te permita encontrar las recetas por ingrediente.

Por lo tanto, necesitará una tabla intermedia para dividir la relación de muchos a muchos en dos relaciones de uno a muchos.

Recipe(RecipeID, etc...) Ingredients(IngredientID, etc....) RecipeIngredients(RecipeID, IngredientID, etc..)

Luego, en RecipeIngredients pondría información como cantidades de ese ingrediente para esa receta.

Quiero hacer una base de datos de recetas que me gusten, pero tengo problemas para diseñarla. Quiero tener al menos dos tablas:

  1. Tabla de recetas (tiene descripción, ingredientes, direcciones, etc ...)
  2. Tabla de ingredientes (tipo de ingrediente, otros atributos, etc ...)

¿Cuál sería una manera de asociar las dos tablas juntas? ¿Necesitaría una tercera tabla que almacenara las diversas relaciones desde una receta hasta varios ingredientes?

Como probablemente puedas decir, soy relativamente nuevo en esto, solo estoy tratando de encontrar la manera correcta de hacerlo en el primer intento.

¡Gracias!



Podría considerar algo como una carpeta de archivos de texto, con un índice de texto completo de algún tipo.

O una tabla como Recetas (ID, LikeRatio, Descripción como texto). De nuevo con una búsqueda de texto completo.

Teóricamente, puedes usar un modelo normalizado como el que sugirió @Mike. Pero mirando las recetas reales, tiene que ser más flexible. Por ejemplo, en este modelo, no hay evidencia del uso en algún paso del resultado de un paso anterior.