Laravel 5 LARAVEL 5.4从其他类访问用户obj
如何从另一个对象的实例访问用户对象? 我可以访问用户的项目,但不能访问项目的作者 这:Laravel 5 LARAVEL 5.4从其他类访问用户obj,laravel-5,eloquent,Laravel 5,Eloquent,如何从另一个对象的实例访问用户对象? 我可以访问用户的项目,但不能访问项目的作者 这: $user_id = App\Project::find(1)->user_id; $user = App\User::find($user_id); 返回一个用户 但这是: $user = App\Project::find(1)->author; 返回空值 预期行为:获取用户 用户类: namespace App; use Illuminate\Notifications\Notifi
$user_id = App\Project::find(1)->user_id;
$user = App\User::find($user_id);
返回一个用户
但这是:
$user = App\Project::find(1)->author;
返回空值
预期行为:获取用户
用户类:
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class User extends Authenticatable
{
use Notifiable;
protected $fillable = [
'name', 'email', 'password'
];
protected $hidden = [
'password', 'remember_token',
];
public function projects()
{
return $this->hasMany('App\Project');
}
}
项目类别:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Project extends Model
{
protected $fillable = [
'title', 'content'
];
public function category()
{
return $this->belongsTo('App\Category');
}
public function author()
{
return $this->belongsTo('App\User');
}
}
在项目模型中,更改以下内容:
public function author()
{
return $this->belongsTo('App\User');
}
为此:
public function author()
{
return $this->belongsTo('App\User', 'user_id');
}
Laravel搜索名为关系名称加上_id的外键,在代码中搜索作者id,如果添加第二个参数,则将其更改为搜索用户idwhat return App\Project::find1->user_id;null或数字?它返回一个数字我用用户替换了方法author,现在它是fineauthor{return$this->belongsTo'App\Post',user\u id',或者它搜索一个author\u idok谢谢!