我正在尝试检索评论和该评论的用户。我在用户和评论之间有以下关系。
这就是我正在尝试的
$ users = Comment :: with('user')-> get();
但是我得到
Class 'User' not found
我不确定我的代码有什么问题。
感谢您的帮助。
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
use App\User;
use App\Event;
class Comment extends Model
{
// Table Name
protected $table = 'comments';
//primary key
public $primaryKey = 'id';
protected $fillable = ['user_id', 'event_id', 'comment', 'deleted_at'];
public function user()
{
return $this->belongsTo('User');
}
<?php
namespace App;
use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;
use Tymon\JWTAuth\Contracts\JWTSubject;
class User extends Authenticatable implements JWTSubject
{
use Notifiable;
protected $fillable = [
'name', 'email', 'password',
];
protected $hidden = [
'password', 'remember_token',
];
public function getJWTIdentifier()
{
return $this->getKey();
}
public function getJWTCustomClaims()
{
return [];
}
public function setPasswordAttribute($value)
{
return $this->attributes['password'] = bcrypt($value);
}
}
答案 0 :(得分:1)
更改
public function user()
{
return $this->belongsTo('User');
}
使用
public function user()
{
return $this->belongsTo('App\User');
}
文档:https://laravel.com/docs/5.7/eloquent-relationships#updating-belongs-to-relationships
答案 1 :(得分:1)
您可以这样使用
public function user()
{
return $this->belongsTo('App\User', 'user_id');
}
或
public function user()
{
return $this->belongsTo('App\User');
}
如果使用此选项,则无需定义use App\User;
希望它能起作用。
谢谢