无法使用laravel在卡片上显示数据库中的数据

问题描述 投票:0回答:1

尽管针对此错误提供了许多解决方案,但我遇到了,我还没有找到解决方案,下面是我在尝试在引导卡上显示数据库中的数据时遇到的错误“)ErrorException 未定义变量:published_articles(查看:/home/nosi/Oresol-Lesotho-Skills-Exercise/blog/resources/views/article_data.blade.php)(查看:/home/nosi/Oresol-Lesotho-Skills-Exercise/blog/资源/views/article_data.blade.php”

下面是我在 web.php 中的路线:

  Route::get('article_data', 'PublishArticlesController@retrieveArticles')->name('article_data');

下面是我的控制器:

公共函数retrieveArticles(){

$articles = PublishArticle::latest()->paginate(6);
return view('article_data')->with(['published_articles'=>$articles]);

}

下面是我的刀片文件,位于视图内,articles_data.blade.php:

    @extends('layouts.public_navbar')

@section('content')
<div class="container text-center">
    <h1>Explore Published Articles</h1>
</div>
<div class="container">
    <div class="card-deck row">
    @foreach ($published_articles as $article)
            <div class="col-xs-12 col-sm-6 col-md-4">
                <div class="card">
                    <div class="view overlay">
                        <a href="#!">
                            <div class="mask rgba-white-slight"></div>
                        </a>
                    </div>
                    <div class="card-body">
                        <h4 class="card-title">{{ $article->article_title }}</h4>
                        <p>Author: {{ $article->author_name }}</p>
                        <p class="card-text">{{ $article->article_body }}</p>
                        <a href="" class="btn btn-primary btn-md">Read more</a>
                    </div>
                </div>
            </div>
        @endforeach
    </div>
</div>

<!-- Add Bootstrap JS and Popper.js scripts (required for Bootstrap) -->
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@popperjs/[email protected]/dist/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js"></script>
@endsection

我们将非常感谢您的帮助

php laravel-5
1个回答
0
投票

当使用with()传递数据时,语法为:

return view('article_data')->with('published_articles', $articles);

如果在 view() 函数中传递数据,则可以使用数组:

return view('article_data', ['published_articles'=>$articles]);
© www.soinside.com 2019 - 2024. All rights reserved.