我的网站将有许多中心。每个中心的管理员应该能够登录和编辑中心,并能够创建更多有权访问该中心版本的用户。
我想到的第一件事是创建1-N中心用户关系,但不确定是否是正确的关系。在其他一些帖子中,我意识到使用1-1关系可能不是一个坏主意。
什么是明智的最佳解决方案?
提前致谢。
答案 0 :(得分:0)
鉴于您对一个中心对用户的评论,您可以这样做。
用户可以拥有一个中心并创建更多(因此1+),并可以向其添加更多用户。
class User < ActiveRecord::Base
belongs_to :center
#...
end
class Center < ActiveRecord::Base
has_many :users
#...
end
然后你可以做像
这样的事情current_user.center
current_user.create_center(params)
some_center.users << user_to_add
答案 1 :(得分:0)
中心的管理员是否会超过1个?
用户怎么样 - &gt;角色 - &gt;中心
用户has_many角色,角色属于中心
通过这种方式,您可以让一个用户成为两个不同中心的“管理员”角色,同一个用户可能是另一个中心的“普通用户”角色。这在我看来最灵活,不确定它是否比你需要的更灵活。