Как использовать отношения «один к одному» в Laravel 4.2

У меня есть таблица поставщика

Class Supplierrank extends Eloquent{
public function supplier(){
return $this->belongsTo('Supplier','supplierid','id');
}

public function user(){
return $this->belongsTo('User','userid','id');
}

}

Я пытаюсь сделать этот запрос

$usersandranking= Supplierrank::with('supplier')->with(array('user'=>function($query) use($exceleve){
$query->where('event','=',$exceleve);
}))->orderBy('userid')->orderBy('rank')->get();

здесь вы можете увидеть, что я пытаюсь получить рейтинг поставщика для всех пользователей, где событие == execelevent

но запрос извлекает меня всех пользователей из таблицы пользователей

любая идея, где я делаю это неправильно

Таблица пользователей выглядит следующим образом

class User extends Eloquent implements UserInterface, RemindableInterface {

use UserTrait, RemindableTrait;

/**
* The database table used by the model.
*
* @var string
*/
protected $table = 'users';

/**
* The attributes excluded from the model's JSON form.
*
* @var array
*/
protected $hidden = array('password', 'remember_token');

public function answer(){
return $this->hasMany('Answer','user_id');
}

public function supplierranking(){
return $this->hasMany('Supplierrank','userid','id');
}
}

ОБНОВИТЬ
после использования
DB :: enableQueryLog ();
а также
дд (БД :: getQueryLog ());

Я получил это

array(5) { [0]=> array(3) { ["query"]=> string(44) "select * from `users` where `id` = ? limit 1" ["bindings"]=> array(1) { [0]=> int(71) } ["time"]=> float(0.59) } [1]=> array(3) { ["query"]=> string(39) "select * from `users` where `event` = ?" ["bindings"]=> array(1) { [0]=> string(32) "Design Mission South Africa 2015" } ["time"]=> float(3.41) } [2]=> array(3) { ["query"]=> string(63) "select * from `supplierranks` order by `userid` asc, `rank` asc" ["bindings"]=> array(0) { } ["time"]=> float(366.02) } [3]=> array(3) { ["query"]=> string(1051) "select * from `suppliers` where `suppliers`.`id` in (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)" ["bindings"]=> array(333) { [0]=> int(41) [1]=> int(43) [2]=> int(33) [3]..................

заранее спасибо

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]