我正在尝试找出针对特定用例管理我的控制器和模型的最佳方法。
我正在构建一个评论系统,其中用户可以使用多态可评论来构建几种不同类型的评论。
Country (has_many reviews & cities)
Subdivision/State (optional, sometimes it doesnt exist, also reviewable, has_many cities)
City (has places & review)
Burrow (optional, also reviewable ex: Brooklyn)
Neighborhood (optional & reviewable, ex: williamsburg)
Place (belongs to city)
我也想知道增加更多的复杂性。我还想偶尔包括细分……例如,对于美国,我可能会添加德克萨斯或德国、巴维利亚,并且也可以对其进行审查,但并非每个国家/地区都有地区,甚至那些可能永远不会被审查的地区。所以一点都不严格。我希望它尽可能简单和灵活。
如果用户可以在一个表单上登陆并选择一个城市或一个国家,然后使用来自 Foursquare 的数据向下钻取以找到一个城市中的特定位置并进行评论,那就太好了。
我真的不确定我应该走哪条路?例如,如果我有一个国家和一个城市……然后我决定添加一个洞穴会发生什么?
我可以给地方标签(即威廉斯堡,布鲁克林)belong_to NY City 并且标签属于 NY 吗?
标签更灵活,可以选择性地解释它们可能在哪些区域,标签属于一个城市,但也有地点并且可以审查?
所以我正在为任何做过相关事情的人寻找建议。
使用 Rails 3.2 和 mongoid。