我正在设计MySQL中的评分表。事情是这样的:
a)给其他人评分的人可以是不同的类型 (管理员,客户,提供者或将来的其他任何东西)
b)从其他人获得评分的人可以不同 类型(Admin,Client,Provider或将来的其他任何类型)
c)在有订单时给别人评分 只要您去网站订购食物即可。当他们给你食物时,你 评价他们)。但是订单可能会有所不同。就我而言 表示货运。这样我就可以拥有RoadOrder,SeaOrder。
看完以上内容,我得出结论,有这样的表:
1)all_ratings表 (此表格并未计算每种用户的当前评分。此处有3种变体形式)
id | from_userable_type | from_userable_id | to_userable_type | to_userable_id | orderable_type | orderable_id | rating
2)评级表(用于计算当前评级。all_ratings仅保存 来自每个用户的任何评级,而评级表具有最终评级 评分。 ratingable_id和ratingable_type可以是任何类型的用户)
id | quantity | current_rating | ratingable_id | ratingable_type
用户表
id | name | email | userable_id | userable_type
管理员,客户,提供者(现在看起来一样)
id
RoadOrder表
id | from_place | to_place | ...etc
问题:您如何看待?这是这种情况下正确的表模式吗?