2014-03-13 2 views
0

У меня есть классический users стола и другая tokens таблицы, которая хранит все маркера для различных применений [pass_reset, активации и т.д. ']Laravel4 Eloquent присоединиться

Когда я получил действительный маркер, я хочу, чтобы принести маркер и присоединиться пользовательские данные с ним.

я сделал следующее выразительными, но все еще что-то оленья кожа подходит:

class User extends Eloquent { 
    public function token() { 
     return $this->hasMany('Token'); 
    } 
} 

class Token extends Eloquent { 

    protected $primaryKey = 'user_id'; 
    var $timestamps = false; 

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

Теперь, когда я получаю правильный маркер Я хочу, чтобы вытащить данные пользователя, как это:

$user = Token::whereRaw("token_type = ? AND token_value = ?",array('pass_reset',$input['token']))->user(); 

Но то не кажется, работает, я думаю, что идея Eloquent все еще не подходит мне в голову ...

ответ

0

Вы можете попробовать это. Я предполагаю, что $ input ['токен'] является допустимым значением.

$user = Token::with('user') 

->whereRaw("token_type = ? AND token_value = ?", 

array('pass_reset', $input['token'])) 

->first()->user; 
Смежные вопросы