我是 Laravel 新手。我一直在嘗試在帖子和類別之間設(shè)置一對多的關(guān)系,我可以使用 post_id 訪問類別,但反之則不行。我收到以下錯誤,“試圖獲取非對象的屬性‘類別’”這是我的 web.php<?phpuse App\Post;Route::get('/test',function(){ return App\Post::find(3)->category;});這是來自 post.php public function category() { return $this->belongsTo('App\Category'); }這是來自category.php public function posts() { return $this->hasMany('App\Post'); }這是Post.php<?phpnamespace App;use Illuminate\Database\Eloquent\Model;use Illuminate\Database\Eloquent\Softdeletes;class Post extends Model{ protected $fillable =[ 'title', 'content', 'category_id', 'featured', 'slug' ]; public function category() { return $this->belongsTo('App\Category'); } public function tag() { return $this-> belongsToMany('App\Tag'); } use SoftDeletes; public function getFeaturedAttribute($featured) { return asset($featured); }.......這是類別.php<?phpnamespace App;use Illuminate\Database\Eloquent\Model;class Category extends Model{protected $fillable = ['name']; public function posts() { return $this->hasMany('App\Post'); }}
3 回答

慕仙森
TA貢獻1827條經(jīng)驗 獲得超8個贊
find方法查找具有給定主鍵的模型。在您的 web.php 中App\Category::find(7)
返回 id 7 的類別實例。我猜您想要做的就是App\Post::find(7)->category
換句話說您正在嘗試檢索 id 7 的帖子并獲取其類別;如果不是,您可能正在嘗試訪問 id 7 的某一類別的帖子,在這種情況下您應(yīng)該編碼App\Category::find(7)->posts
。
- 3 回答
- 0 關(guān)注
- 151 瀏覽
添加回答
舉報
0/150
提交
取消