Пользовательские отношения Laravel перестали работать

Я только что загрузил и начал новый проект с последним Laravel 4.2.

Моя проблема заключается в модели User если я определяю какое-либо отношение, которое оно не работает.

Модель пользователя

 use Illuminate\Auth\UserTrait; use Illuminate\Auth\UserInterface; use Illuminate\Auth\Reminders\RemindableTrait; use Illuminate\Auth\Reminders\RemindableInterface; 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 metadata() { return $this->hasOne('Metadata'); } public function test() { return "hello test"; } } 

Модель метаданных

 class Metadata extends Eloquent { public $timestamps = false; protected $primaryKey = 'user_id'; protected $table = "users_metadata"; protected $fillable = array('user_id', 'first_name', 'last_name'); public function user() { return $this->belongsTo('User'); } } 

Поэтому, если я это сделаю

 $user = User::find(1); dd($user->metadata); 

Я возвращаюсь Null , и выше я сделал тестовый метод в моей модели User

Если я это сделаю:

 $user = User::find(1); dd($user->test()); 

я получил

 Call to undefined method Illuminate\Database\Query\Builder::test() 

Зачем? Там ясно. Я поместил свой код в более раннюю версию, и он работал нормально.

И что меня действительно смущает, так это если я это сделаю:

 $metadata = Metadata::find(1); dd($metadata->user); 

Он отлично работает с методом belongsTo , я тестировал модель User с другим отношением – теми же результатами.