ErrorException为foreach()Laravel提供的参数无效

时间:2017-06-23 07:17:58

标签: laravel foreach blade

我只是想从我的表名帖子中获取所有数据但是发生错误它不会让我在index.blade.php上显示数据

public function index()
    {
        //
        $posts = Post::all();

        return view('posts.index')->withPosts('$posts');

    }

这是我的index.blade.php

@foreach( $posts as $post )
            <div class="post-preview">
                    <a href="post.html">
                        <h2 class="post-title">

                            {{ $post->title }} -> this is the one i want to display

                        </h2>
                        <h3 class="post-subtitle">

                            {{ $post->body }}

                        </h3>
                    </a>
                    <p class="post-meta">Posted by <a href="#">Start Bootstrap</a> on September 24, 2014</p>
                    <button type="button" class="btn btn-secondary">&nbsp;&nbsp;Edit&nbsp;&nbsp;&nbsp;</button>
                    <button type="button" class="btn btn-secondary">Delete</button>
            </div>

                <hr>
            @endforeach

5 个答案:

答案 0 :(得分:1)

你最好像这样使用with

return view('posts.index')->with('posts',$posts);

答案 1 :(得分:1)

您应该将其用作

return view('posts.index')->with(compact('posts'));

答案 2 :(得分:0)

不要在$ posts中使用单引号

return view('posts.index')->withPosts($posts);

或尝试第二种方式

return view('posts.index', compact('posts'));

答案 3 :(得分:0)

您可以使用compact方法

return view('posts.index',compact('posts'));

答案 4 :(得分:0)

如果其他解决方案无效,请尝试此操作。

我可能认为您只是错过了表单中的这一行“ enctype =” multipart / form-data“

请参见以下示例:

<form action="{{ route('upload.files') }}" method="POST" enctype="multipart/form-data">
<input id="fileupload" type="file" name="attachment[]" multiple>
</form>


不要忘记单击向上的箭头。希望对您有所帮助:)