The app I'm working on revolves around projects. Each project can contain several lists, and each list is made up of several items. Each list relates to a single project.
Is it better to have one listitem table structured as such: id, list_id, event_id, content or 2 tables; one containing the relationship between project and list, and the other containing only list items and their relationship to a particular list?
Is it better to have just one table of which each row would be a list item, including that item's relationship to a project and the name of the list it belongs to:
list_item(id, project_id, list_name, content, <<other attributes>>)
or, have one list item table for all of the list items in the app and and a separate list table:
list(id, project_id, name, description, <<other attributes>>)
list_item(id, list_id, content, <<other attributes>>)