Ich habe einfache CMS mit Laravel und wenn ich versuche, Beiträge innerhalb einzelner Kategorie page.Using $ Kategorie-> Beiträge(), die ich in meiner Kategorie Modell zugeordnet, aber aus irgendeinem Grund ist es nicht definiert und ich erhalte die folgenden Fehler Fehler beim Abrufen von Kategorie Beiträge
und hier ist mein Codes
Kategorie Model
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Category extends Model
{
protected $table = 'categories';
public function posts()
{
return $this->belongsToMany('App\Posts')->withTimestamps();
}
}
Beitrag Modell
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{
public function categories()
{
return $this->belongsToMany('App\Category')->withTimestamps();
}
public function user()
{
return $this->belongsTo('App\User');
}
public function meta()
{
return $this->hasMany('App\Postmeta');
}
}
**Category Controller**
<?php
namespace App\Http\Controllers\Frontend;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use App\Category;
class CategoriesController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function getIndex()
{
return view('frontend.categories.index')->withCategories(Category::orderBy('id', 'desc')->paginate(6));
}
/**
* Display the specified resource.
*
* @param int $slug
* @return \Illuminate\Http\Response
*/
public function getSingle($slug)
{
$category = Category::where('slug', '=', $slug)->first();
$posts = ($category !== null) ? $category->posts() : array();
return view('frontend.categories.single')->withCategory($category)->withPosts($posts);
}
}
Sie haben gerade eine einfach zu buchstabieren Fehler gemacht. Dein Modellname ist 'Post', aber in deiner Kategorie versuchst du mit 'Posts' darauf zuzugreifen. – DestinatioN