2012-03-11 55 views
0

我建立一个web应用程序为员工食堂 - 与一些社会 功能,如评论,图片,收视率,...这个模式适用于MongoDB用法吗?

我第一次与经典的SQL使它 - 很多关节,其中 结果 - 非常丑陋!

所以我决定使用MongoDB作为解决方案。我将根据 一天构建一个文档。每个菜单都包含很多带有嵌套评论和评分的菜单。 图片和用户将被链接。

所以我才开始发展,I'ld爱得到一些情绪, 所以这里是我的架构(只用于演示,最后我会 轨建立它/ mongoid):

{ 
    id: DAY_ID, 
    timestamp: TIMESTAMP, 
    meals: [{ 
      id: MEAL_ID, 
      price: MEAL_PRICE, 
      category: MEAL_CATEGORY, 
      name: MEAL_NAME, 
      sides = ["SIDE1_NAME","SIDE2_NAME",...], 
      additives = [1,2,3,...], 
      comments: [{ 
        id: COMMENT_ID, 
        user_id: USER_ID, 
        value: "Tasts good" 
      },{ 
        id: COMMENT_ID, 
        user_id: USER_ID, 
        value: "Mhhhhhhhh!" 
      }], 
      ratings: [{ 
        user_id: USER_ID, 
        value: 5 
      },{ 
        user_id: USER_ID, 
        value: 3 
      }], 
      photos = [PHOTO_ID_1,PHOTO_ID_2,...] 
    },{ 
      .... next meal 
    }] 
} 

{ 
    Users will be linked 
} 

{ 
    Photos will be linked 
} 

这个用法可以吗?

感谢配发 PascalTurbo

回答

0

这种问题不能真正回答。如果它适合你,那很好。如果有问题 - 找到根本原因并解决它。你不应该丢弃一个可行的解决方案,因为它很“丑陋”,因为它很“酷”而流入nosql的土地。

试试这个解决方案,如果你开始碰到颠簸,来这里问一些真正的问题。