如何在Laravel“belongsToMany”方法中定义自定义外键?

问题描述 投票:0回答:1

表MemberOwner:

id |名字|时间

表会员:

id |性别年龄

table MemberOwner_Member:

id | ownerid |会员ID

这是我的关系定义代码:

class MemberOwner extends Eloquent {

    public function members()
    {
        return $this->belongsToMany('Member','MemberOwner_Member','?','?');
    }
}

看看上面的问号,如何填写?谢谢,我试过了

OWNERID,MEMBERID

MEMBERID,OWNERID

但它们都不起作用,我需要你的帮助,再次感谢!

php laravel laravel-4
1个回答
0
投票

试试这个:

class MemberOwner extends Eloquent {

public function members()
{
    return $this->belongsToMany('Member','MemberOwner_Member','foreign key','localkey');
  }
}

这里我们在MemberOwner模型中指定它,对于MemberOwner_Member表,外键将是ownerid,如果你想指定本地id,那么它将是id,它是那里的主键。用这个:

 class MemberOwner extends Eloquent {

   public function members()
   {
    return $this->belongsToMany('Member','MemberOwner_Member','ownerid');
  }
}

如果要指定本地密钥,这也可以。

 class MemberOwner extends Eloquent {

    public function members()
   {
      return $this->belongsToMany('Member','MemberOwner_Member','ownerid','id');
   }
}
© www.soinside.com 2019 - 2024. All rights reserved.