用户图像/配置文件字段 - 数据库规范化 - 社交网络 - Grails

时间:2011-07-17 17:05:17

标签: database grails database-normalization

我应该规范用户profile_image_url链接和字段,例如profile_background_color用户可以自定义其个人资料吗?

拥有一个包含所有内容的用户类。

class User {

  String profile_big_url
  String profile_thumb_url

  String profile_background_color
  String profile_text_color
  String profile_link_color
  String profile_sidebar_fill_color
  String profile_sidebar_border_color
  String profile_background_image_url
  String profile_background_tile

}

或三个班级

class User{

   Photo photo
   Profile profile

}

class Photo{
   User user   
   String profile_big_url
   String profile_thumb_url
}

class Profile{
   User user
   String profile_background_color
   String profile_text_color
   String profile_link_color
   String profile_sidebar_fill_color
   String profile_sidebar_border_color
   String profile_background_image_url
   String profile_background_tile
}

哪个更适合规模,性能,修改?

1 个答案:

答案 0 :(得分:1)

我不担心。拆分表会导致select更小,但这些只是短字符串,因此提取的数据量超出了您的需求。加入可能很昂贵,但同样,这些都很简单。

另一种方法是将所有内容保留在一个表中,但使用组件将类逻辑上分成三个代码。见http://grails.org/doc/latest/guide/5.%20Object%20Relational%20Mapping%20%28GORM%29.html#5.2.2%20Composition%20in%20GORM