Laravel有很多很多关系

时间:2017-07-28 08:13:13

标签: php mysqli laravel-5

我有usersmeetingscomments个表格,我希望用户能够发布有关用户个人资料和会议的评论。

我知道如何为用户和评论表创建一对多关系,但我希望将所有评论保存在一个表中,并在用户个人资料和会议上显示评论。

这是我的表结构:

users
id
name
comment_id

meetings
id
name

comments
id
user_id
comment

2 个答案:

答案 0 :(得分:1)

TL; DR解决方案是使用Laravel非常简单的polymorphic relationships

恕我直言,我不认为多对多的关系能够胜任这项工作。这意味着:

  • 用户可以发布多条评论。好
  • 评论可以属于多个用户。怪异
  • 会议可以有多个评论。好
  • 评论可以属于多个会议。怪异

另外,您可能需要两个comments表才能实现这一目标。例如comment_user表和comment_meeting

最适合你情况的那种关系是多态的。这个名字可能很吓人,因为它来自古希腊。但名称背后的概念非常简单。 Laravel让polymorphic relationships非常容易。您肯定会在Laravel文档中给出的示例中认识到您的情况;)

答案 1 :(得分:0)

在保存评论的同时,还要保留一个名为model的字段(或您喜欢的任何人)来识别users profilemeetings

HTH