laravel - 我应该如何在 Laravel 中构建我的数据库/模型?
问题描述
我的应用程序有几个项目。每个项目都有具有不同固定角色的成员,并且一个成员可以在同一个项目的多个角色下列出(重要!)。我应该如何构建我的数据库/模型?
我希望它看起来像这样:
项目页面(看到一些成员可以在同一个项目下列出两次)
Project 1
Gardeners
John Doe
Lisa Smith
Janitors
Eric Black
John Doe
Pool keepers
Bella Johnson
Project 2
Gardeners
Lisa Smith
Janitors
Bella Johnson
John Doe
Lisa Smith
会员页面
Bella Johnson
Janitor
Pool keeper
Eric Black
Janitor
John Doe
Gardener
Janitor
Lisa Smith
Gardener
Janitor
我对数据库结构的思考
项目
id
title
会员
id
name
角色
id
name
成员角色
id
member_id
role_id
member_role_project
id
member_role_id
project_id
我也可以用这个而不是member_role_project
上面的,但因为我需要一个关系member_role
,它似乎是多余的:
member_project_role
id
member_id
project_id
role_id
当我加载我的项目页面时,我可以在 Laravel 中一次性加载所有内容,还是我需要获取所有事件、循环并获取所有角色、循环并获取所有成员?很多查询。什么是正确的方法?谢谢!
解决方案
推荐阅读
- java - Java 14 记录和数组
- javascript - 使用 Ajax 和 formData 的 Laravel 419 错误,
- python - 屏蔽不同大小的数组,然后替换另一个数组的元素
- javascript - vue.runtime.esm.js?2b0e:619 [Vue 警告]:属性或方法“add”未在实例上定义,但在渲染期间引用
- visual-studio - VS 2019 中 Azure LogicApps 的架构和映射
- python - 当两个列表组合在一起时如何从列表项中删除括号、逗号和引号
- html - 父母相对于孩子的位置
- mysql - 如何更新表的所有行而不在 Laravel 中检索它们?
- c++ - C++ 指针警告:算术溢出:对 4 字节值使用运算符“-”,然后将结果转换为 8 字节值
- java - java下MySql Connector SQL Statement不返回任何值