我正在处理复杂的数据库模式,在很多地方我发现了相同的模式,现在我想知道这种情况下的activerecord命名约定是什么。
这只是一个示例,假设我有这样的实体/表:帐户,用户和角色。 要与此表建立关系(has_and_belongs_to_many),我需要创建此表: accounts_users 和 accounts_roles 。 但现在我需要将帐户角色与帐户用户相关联。 (它也是一个has_and_belongs_to_many)
此案例的惯例是什么?的 accounts_roles_users ?的 accounts_users_accounts_roles ?或者只是一个具有更通用名称的新模型(user_permissions)?模型应该在命名空间内吗?
答案 0 :(得分:1)
如果它是一个非常简单的关系表(即你没有计划存储任何其他数据),那么accounts_roles_accounts_users
可能是最常规的名称,就像那样丑陋。
然而,完全找到称他们为user_permissions
,因为他们就是这样。我很擅长为事物命名(例如,如果你有users
和groups
,我就会将这种关系称为membership
而不是groups_users
,因为后者是粗略的)。