我是laravel 5.1的新手,所以我有一个简单的问题。
我有用户表和user_info表。如果我创建一个用户,我想为user_info表创建另一条记录,如果我得到用户,那么我想获得user_info记录,但我不这样做。
代码如下。
<?php
namespace App;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
protected $fillable = [
'name', 'email', 'password',
];
protected $hidden = [
'password', 'remember_token',
];
public function profile()
{
return $this->hasOne('Http\Models\userInfo');
}
}
这是userInfo类
<?php
namespace App\Http\Models;
use Illuminate\Database\Eloquent\Model;
class userInfo extends Model
{
protected $table = 'user_info';
}
这是欢迎页面
@extends('master')
@section('content')
<div class="container">
<div class="row">
<div class="col-md-10 col-md-offset-1">
<div class="panel panel-default">
<div class="panel-heading">Welcome</div>
<div class="panel-body">
<pre>{{ dd(Auth::user()->profile) }}</pre>
</div>
</div>
</div>
</div>
</div>
@endsection
我收到了这个错误
FatalErrorException in Model.php line 740:
Class 'Http\Models\userInfo' not found
我在哪里做错了?
答案 0 :(得分:0)
这是因为命名空间不匹配。只需替换:
return $this->hasOne('Http\Models\userInfo');
通过
return $this->hasOne('App\Http\Models\userInfo');