Eloquent/Laravel三方多对多关系

Rao*_*lin 6 orm laravel eloquent

我是Laravel和Eloquent的新手(我对ORM的总体经验很少).

假设我有三个数据库表:

  1. 小工具
  2. 操作
  3. 用户

我已经建模了一个包含以下列的联结表:

  1. widget_id
  2. action_id
  3. user_id
  4. 时间戳

结点是保持一个日志互动-以时间戳每次user执行actionwidget.我看到如何使用Eloquent建立一个简单的多对多关系模型并使其工作正常,但我不确定如何建模更复杂的三向关系.

对于这个问题,即使我有一个简单的多对一对多的关系(说widgetaction这样会有一个名为表action_widget),我怎么可以添加一个明确的模式,为action_widget雄辩表,用于跟踪额外数据的目的关于每个关系(例如时间戳,注释字段等).或者,我是否只是以完全错误的方式进行此操作?

作为ORM的新手,我觉得自己无能为力!这种感觉会消失吗?:p

Mil*_*Rey 12

当你有像Categoty < - > Article这样的双向关系时,pivot工作正常.但如果你有3路关系,我认为最好有一个名为WidgetUserAction的模型.

编辑:对于这些情况,新的"hasManyThrough"工作正常.

  • 你能解释一下如何解决这个问题吗?我面临着类似的问题,但我不太了解Eloquent是否遵循它并且文档不够好. (3认同)