如何在Laravel 5中调用模型


How to call models in Laravel 5?

因此,在L5中,我创建了类似app/Models/Blog的文件夹,其中是文件Posts.php,看起来像:

<?php namespace App'Models'Blog;
use Illuminate'Database'Eloquent'Model;
class Posts extends Model {
    protected $table = 'posts';
}

之后,我执行了composer dump,然后在我的控制器中:

namespace App'Http'Controllers;
use App'Http'Controllers'Controller;
use Models'Blog'Posts as Posts;
class BlogController extends Controller {
    public function index()
    {
        $post = Posts::all()->toArray();
        dd($post);
    }
}

它给了我一个错误:

FatalErrorException in BlogController.php line 14: Class 'Models'Blog'Posts' not found

尝试更改此:

use Models'Blog'Posts as Posts;

到此:

use App'Models'Blog'Posts;

在Laravel 5.2中,它只是:

use App'Blog;

use App'Blog'Posts;

更改以下

class Posts extends Model {

class Posts extends 'Eloquent {

您需要检查两点:

  1. namespace必须先进入
  2. 在您的情况下,使用必须是use App'Models'Blog

像这样:

<?php
namespace App'Http'Controllers;
use App'Http'Controllers'Controller;
use App'Models'Blog;
class BlogController extends Controller {
    public function index()
    {
        $post = Posts::all()->toArray();
        dd($post);
    }
}

(用Laravel 5.4测试)