我想向我的应用程序添加评论,以便视频的所有者可以为该视频选择多个评论栏/表单,并为每个栏添加标题,然后用户可以对其中一个评论或更多的专栏。建立这些复杂模型关联的最佳方式是什么?
我想建立其表看起来像这样一个VideoComment模式:
-------------------------------------
id | video_id | user_id | comment_id
然后视频将有一个的has_many通过与通过VideoComment意见关联。此外,用户可以通过VideoComment通过与每条评论和视频的关联来获得has_many。
为了支持多列,我在考虑让评论与另一个模型CommentColumns有一个habtm关联。
评论看起来就像这样:
-----------------------------
id | body
CommentColumns看起来就像这样:
------------------------
id | title
而且加入了注释,commentColumn间表将CommentMatching:
------------------------------
comment_id | comment_column_id
我的第一个问题是......我在正确的轨道上,还是我距离很远?
我的第二个问题是......在我的控制器中访问不同数据关联的所有可能的组合是什么?
PS。不要害羞!如果你想让我澄清一些事情,请问我任何问题。
你的设置使得除了一件事感觉,让我困惑:视频有很多话题和主题有很多的意见,但我想像这样一个表的评论跨越的垂直主题的多种每个水平评论蔓延,等等不会有评论有很多话题?或者每个评论实际上只是一个块而不是整个水平行? – 2011-04-03 03:08:56
此外,您将如何获得用户对特定视频的所有评论? – 2011-04-03 03:13:19
类似于@ @ video.topics.comments.where(:user_id => X)'? – 2011-04-03 03:23:46