我有三个表(块、角色、用户),其中架构中存在以下情况:
blocks have many users
users have many blocks
users have many roles, but the roles are specific to the block (and the user)
blocks have many roles, but the roles are specific to the user (and the block)
例如:
user => john
belongs to block => 'metro' with role => 'builder'
belongs to block => 'rural' with role => 'investor'
user => dan
belongs to block => 'metro' with role => 'resident'
belongs to block => 'rural' with role => 'investor'
我有一个名为 block_role_user 的连接表,其中包含以下列:
id block_id role_id user_id created modified
我想这将是所有三个表之间的 hasandbelongstomany 关系。我考虑过在块和用户之间使用 hasandbelongstomany 表以及角色和用户之间的另一个 hasandbelongstomany 表来布局,但这并不能完全定义块、角色和用户之间的唯一关系。
我正在寻找解决此问题的最佳方法的建议,并感谢任何建议。
我已经研究过绑定模型,但这似乎不适用于我在这里拥有的独特的三部分关系。
我考虑过创建一个名为 blockroleuser 的模型并使用标准 cakephp 约定设置关系。如果这是一种可接受的方式,您能否就命名模型和控制器文件提供一些指导?
再次感谢...