Создаю базу доступных блюд в ресторанах.
Требования следующие:
1. Категории общие, то есть ресторан может выбрать категории себе только из тех что есть в системе. В дальнейшем планируется что ресторан сможет изменять описание и представление категории под себя. Тут вроде как очевидно, многие ко многим.
2. Блюдо может быть сразу во многих категориях. Тут тоже должно быть многие ко многим. Но вот как сделать промежуточную таблицу у меня появились сомнения. Стоит ли делать связь через таблицу категорий ресторанов чтоб исключить дубли, а если появятся дополнительные параметры категорий, к примеру видимость, то по идеи по другому ни как.
А если добавить ещё таблицу заказов, то для того чтоб получить сущность ресторана надо аж через три промежуточные таблицы, блюда->категории блюд ресторанов->категории ресторанов->рестораны, это нормально?
Может есть что-то ещё что я не учел из-за отсутствия опыта работы с магазином?