如何正确配置架构?
Posted
技术标签:
【中文标题】如何正确配置架构?【英文标题】:How to correctly configure schema? 【发布时间】:2022-01-02 09:27:36 【问题描述】:我的问题: 我想要完成的是增加用户将他们的菜单与另一个用户链接的能力。允许从任一用户对两个用户显示的菜单进行任何更改。
我目前的思考过程: 我为“加入的用户”添加了一个字段,但看起来不正确。为菜单制作一个单独的表格然后从那里拉出来会更好吗?还是有更合适/更有效的方法来实现这一点?
以下是我的架构:
*编辑
抱歉,回复晚了。我想我明白了。
【问题讨论】:
菜单可以由一组用户共享,还是总是一对? 好吧,最初我只打算这对,但由一组共享更有意义。 “菜单”不应该有“名称”,而不是“食谱”吗? 【参考方案1】:不要将menu_user
放在menu
表中,而是创建一个关联所有共享菜单的用户的关系表:
CREATE TABLE menu_users (
id INT(10) PRIMARY KEY AUTO_INCREMENT,
user_id INT(10),
menu_id INT(10),
UNIQUE INDEX (user_id, menu_id),
FOREIGN KEY (user_id) REFERENCES users (id),
FOREIGN KEY (menu_id) REFERENCES menu (id)
);
【讨论】:
以上是关于如何正确配置架构?的主要内容,如果未能解决你的问题,请参考以下文章
开源周荐分布式配置管理神器Qihoo360/QConf入门指北(部署配置使用架构原理)