-2

有 Laravel 8 路由和控制器问题

我对 laravel8 有点陌生并且掌握了它,我正在构建一个新闻门户作为一个项目并同时学习。

在主索引页面上,我喜欢显示一些数据,例如帖子和类别等,其中数据来自数据库中的不同表,来自相同的控制器,但不同的方法到达相同的路由。所以我有点卡在这里,我遇到的问题是它不起作用这是我的代码

这里是路线

// main Index Page
Route::get('/','App\Http\Controllers\Home_pageController@categories);
// Index Latest Posts
Route::get('/','App\Http\Controllers\Home_pageController@homePageLatestPosts');

控制器中的方法 这是在侧边栏中显示最新帖子的方法

// Display latest limit by 10 the posts on home page
    public function homePageLatestPosts(){
        // $all_posts = Blogs::all();
        $latest_posts = DB::table('blogs')->join('users', 'users.id', '=', 'blogs.added_by')->select('users.*','blogs.*')->orderBy('blogs.created_at', 'desc')->paginate(5);
        // dd($latest_posts);
        return view('welcome' , ['latest_posts'=>$latest_posts]);
    }


// Show Categories
    public function categories(){
        $categories = DB::table('categories')->orderBy('category_name', 'desc')->get();
        // dd($categories);
        return view('welcome',['cats'=>$categories]);
    }

我想知道问题是什么,是否有解决方案,以及我是否采取了正确的方法

我用谷歌搜索了一个解决方案,但无法解决它

提前致谢

4

1 回答 1

0

感谢您的回复。

我通过一种方法从数据库中获取数据并将它们传递给视图进行显示。

use App\Models\Blog;
use App\Models\User;
use App\Models\Categories;
    public function welcome(){
        // Latest Posts
        $latest_posts = DB::table('blogs')->join('users', 'users.id', '=', 'blogs.added_by')->select('users.*','blogs.*')->orderBy('blogs.created_at', 'desc')->paginate(10);
        // Home Page Categories
        $categories = DB::table('categories')->orderBy('category_name', 'desc')->get();
        // Return
        return view('welcome' , [ 'categories'=>$categories,'latest_posts'=>$latest_posts]);
    }
于 2021-01-03T15:47:46.137 回答