我正在创建一个杂项跟踪器应用程序作为我的第一个Rails项目,我想知道我创建的关联是否有意义或可以改进。以下是该应用的详细信息:
以下是我粗暴的关系,我正在寻找反馈:
(型号)用户
(型号)列表
(型号)USER_LIST
(型号)家务
有任何危险信号吗?提前谢谢!
答案 0 :(得分:0)
我会做这样的事情:
# user.rb
class User
has_many :lists_users
has_many :lists, through: :lists_users
has_many :chores, through :lists
end
# list.rb
class List
has_many :lists_users
has_many :users, through: :lists_users
has_many :chores
end
# lists_user.rb
class ListsUser
belongs_to :user
belongs_to :list
# field (Representational, add it in database)
:user_role
- member (can view)
- collaborator (can mark complete)
- owner (can do everything)
end
# chore.rb
class Chore
belongs_to :list
end
注意:我根据rails命名约定将关联模型更改为ListsUser
。
如果我错过了什么,请告诉我。