Я пытаюсь отобразить данные на стороне страницы блога, но вместо этого, чтобы получить все сообщения во всех категориях, я хотел бы иметь для каждой отдельной страницы нужную категорию.
Например: новости/ entertainment - будет сообщение из категории развлечений и т. д. ...
Это код для извлечения всех данных:
@php
// use App\post_category;
use Carbon\carbon;
if (!isset($posts)) {
$posts= App\post::latest()->paginate(6);
}
@endphp
попытался заменить latest
на мой category
или post::post_category:entertainment
, но не работает.
post.php
namespace App;
use Illuminate\Database\Eloquent\Model;
class post extends Model
{
public function post_category(){
return $this->belongsTo(post_category::class);
}
public function cms_user(){
return $this->belongsTo(cms_user::class);
}
// public function post_categories(){
// return $this->hasMany('App\post_category');
// }
}
post_category.php
namespace App;
use Illuminate\Database\Eloquent\Model;
class post_category extends Model
{
// public function posts(){
// return $this->hasMany("App\post");
// }
// public function post(){
// return $this->belongsTo(post::class);
// }
}
postcontroller.php
namespace App\Http\Controllers;
use App\post;
use App\post_category;
use Illuminate\Http\Request;
class PostController extends Controller
{
public function single($title){
$post=post::where("title",str_replace("-"," ",$title))->first();
if ($post!=null) {
return view('noutati-detaliu',compact("post"));
}else{
echo '<h1>ERROR 404, Not Found!</>';
}
}
public function category($category){
$category=str_replace("-", " ",$category);
$cat_id=post_category::where("name","$category")->pluck("id")->first();
if ($cat_id==NULL) {
echo "<h1> Invalied Category </h1>";
}
$posts=post::where("post_category_id",$cat_id)->latest()->paginate(6);
if ($posts!=null) {
return view("noutati",compact('posts'));
}else{
echo "<h1>ERROR 404, not found! </h1>";
}
}
}
postcategorycontroler.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class PostCategoryController extends Controller
{
//
}
Пожалуйста, совет!
Спасибо!