Eloquent ORM通过映射表实现多对多的关系

时间:2017-07-17 15:21:07

标签: php orm eloquent laravel-eloquent

我是新手,但我似乎无法找到通过映射表创建多对多关系的示例。以下是有问题的表格结构:

ResultInfo表

  • ResultID PrimaryKey
  • 其他一些领域

ResultInfoMapping表

  • ResultsInfoMappingsID PrimaryKey
  • ResultID ForeignKey到ResultsInfo表
  • ServiceID ForeignKey to Service Table

ServiceKeywords表

  • ServiceID PrimaryKey
  • 其他一些领域

我为每个表都有一个模型

class Result extends Model {
    protected $table = 'The table name';
    protected $primaryKey = 'ResultId';

    public function keywords() {
    return $this->hasManyThrough('Models\ServiceKeywords',   Models\ResultsInfoMappings');
    }
}


class ResultInfoMappings extends Model
{
     protected $table = 'The table name';
}
class ServiceKeywords extends Model
{
    protected $table = 'The table name';
    protected $primaryKey = 'ServiceID';
}

我觉得这必须是常见的,但我找不到如何做到这一点并且没有成功的例子。感谢

这里有更好的例子 http://laraveldaily.com/pivot-tables-and-many-to-many-relationships/

0 个答案:

没有答案