You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel中无法在Bootstrap卡片显示数据库数据问题求助

解决Laravel中“未定义变量$published_articles”错误

核心原因

控制器指定加载的视图文件名称与实际视图文件名不匹配:

  • 控制器中使用view('article_data'),对应预期的视图文件是article_data.blade.php
  • 你实际的视图文件名为articles_data.blade.php(多了一个s)

这导致Laravel加载的视图未接收到传递的published_articles变量,从而触发ErrorException。

解决方案(二选一即可)

方案1:修改视图文件名

将articles_data.blade.php重命名为article_data.blade.php,确保与控制器中view()方法的参数一致。

方案2:修改控制器代码

调整控制器中的视图名称,匹配现有视图文件名:

public function retrieveArticles(){
    $articles = PublishArticle::latest()->paginate(6);
    // 将article_data改为articles_data
    return view('articles_data')->with(['published_articles'=>$articles]);
}

额外检查项

  • 清除视图缓存:执行命令php artisan view:clear,避免旧缓存影响视图加载
  • 确认模型命名空间:确保控制器顶部引入了正确的PublishArticle模型,例如:
    use App\Models\PublishArticle; // Laravel 8+版本
    // 或 Laravel 7及以下版本:use App\PublishArticle;
    
  • 验证路由访问:确保访问的URL是/article_data,对应路由正确指向PublishArticlesController@retrieveArticles

内容的提问来源于stack exchange,提问作者Mr Chefane

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 15:57:44