找不到“App \ Post”类

时间:2016-09-20 12:05:49

标签: php jquery ajax laravel pagination

我正在开发 laravel 5.2使用Jquery的AJAX分页我已将我的帖子类定义为

post.php中

<?php

class Post extends Eloquent
{
    /**
     * The database table used by the model.
     *
     * @var string
     */
    protected $table = 'posts';

    /**
     * Define guarded columns
     *
     * @var array
     */
    protected $guarded = array('id');
}

BlogController.php

<?php

class BlogController extends Controller
{
  /**
     * Posts
     *
     * @return void
     */
    public function showPosts()
    {
      $posts = Post::paginate(5);

        if (Request::ajax()) {
            return Response::json(View::make('posts', array('posts' => $posts))->render());
        }

        return View::make('blog', array('posts' => $posts));
    }
}

请帮我在哪个地方粘贴这个课程。 我知道它的错误,模型类缺失,但不知道如何摆脱

enter image description here

我的代码结构是快照 感谢

6 个答案:

答案 0 :(得分:3)

您的Post.php模型应

namespace App;

use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    //
}

BlogController.php文件中添加以下行

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

use App\Post;

请阅读: - https://laravel.com/docs/5.2/eloquent

答案 1 :(得分:0)

在文件开头添加命名空间,并使用Model而不是eloquent类来扩展

<?php
namespace App;
use Illuminate\Database\Eloquent\Model;

class Post extends Model {

}

它适用于laravel&gt; 5.0。

答案 2 :(得分:0)

您可以使用此代码     命名空间App \ Post;

或者你可以使用

 use App\Post;

答案 3 :(得分:0)

您应该在 Post.php 文件的顶部添加以下语句,如下所示......

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

现在,在 BlogController.php 中,在文件顶部添加以下语句,例如......

<?php

use App\Post;

肯定会在Laravel 5&gt; =

中运作

答案 4 :(得分:0)

如果你试试这个,

    <? php
       namespace App;
       use Illuminate\Database\Eloquent\Model;
       class Post extends Model       


    <? php
       namespace App\Http\Controllers;
       use App\Post;
       use Illuminate\Http\Request;
       use App\Http\Requests;
       use App\Http\Controllers\Controller;

使用此..也许它会帮助你..并注意到控制器文件在   文件夹App \ Http \ Controllers ..

答案 5 :(得分:0)

就我而言,我之前已将 App 命名空间重命名为 CustomApp 。我正在使用

use App\Post;

相反,我必须使用

use CustomApp\Post;