Skip to content

Simplify Recipe Model #363

@ethanmick

Description

@ethanmick

Can we simplify the recipe model and the versioning? Should we? Looking at the data model now, we have:

ingredient_lines
ingredient_list_lines
ingredient_lists
preheats
procedure_lines
procedure_list_lines
procedure_lists
recipe_branches
recipe_collaborators
recipe_durations
recipe_version_ingredient_lists
recipe_version_preheats
recipe_version_procedure_lists
recipe_versions
recipe_yields
recipes

That seems like a lot! I know we support versioning, and a lot of git like functionality, but after we've had this for a while, do we need it all? A recipe, at its simplest, can be modeled as:

recipes

## Meta Data
recipe_yields
preheats
recipe_durations

## Instructions
ingredient_lines
procedure_lines

We do support multiple ingredient and procedure sections, the *_lists. That's probably good to have, a lot of recipes make use of that.

Do we need versioning? Is our implementation the best of that? My hunch says it might be worth simplifying the entire thing down to a previous key, or one table that tracks all the versions of a recipe, with the information being more duplicated. Thoughts?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions