2015-11-14 4 views
1

В чем разница между ними?В чем разница между этими

return $this->belongsToMany('Acme\Models\User','friends','user_id','friend_id'); 

и

return $this->belongsToMany('Acme\Models\User','friends','friend_id','user_id'); 

может кто-нибудь объяснить это с SQL Server?

+0

Почему бы не напечатать запрос и исследовать себя? –

+0

Как я могу распечатать запрос? -> toSql() dosent work – user2647541

+0

Just QueryLog как этот '$ queries = DB :: getQueryLog(); $ last_query = end ($ queries); ' –

ответ

1

Третий аргумент является внешним ключом названия модели, на которой вы определяете отношения, в то время как четвертый аргумент является внешним ключом имени модели, что вы присоединение к.

В модели пользователя вы должны использовать:

return $this->belongsToMany('Acme\Models\Friend','friends','friend_id','user_id'); 

И в Friend модели:

return $this->belongsToMany('Acme\Models\User','friends','user_id','friend_id');