首页 文章

Laravel在命名空间中找不到类

提问于
浏览
1

我使用Laravel,我在App / Models下有一个Model类

<?php
namespace App\Models;

class TodoList extends \Eloquent{
  public function listItems(){
      return $this->hasMany('TodoItem');
  }
}

在我的Controller中,我将命名空间包括在内,如下所示:

namespace App\Http\Controllers;

...

use App\Models\TodoItem;
use App\Models\TodoList;

class TodoListController extends Controller

我的方法看起来像这样:

public function show($id)
{
    $list=TodoList::findOrFail($id);
    return \View::make('todos.show')->with('list', $todo_list);
}

但当我打电话给我的请求时,我得到错误:

TodoListController.php第75行中的FatalErrorException:未找到类'App \ Models \ TodoList'

3 回答

  • 1

    我不确定,试试这个:

    namespace App\Models;
    
    use Illuminate\Database\Eloquent\Model as Eloquent;
    class TodoList extends Eloquent{
      public function listItems(){
          return $this->hasMany('TodoItem');
      }
    }
    
  • 1

    以下是文档中的代码,但是以您的示例为例 . 注意使用型号:

    namespace App\Models;
    
    use Illuminate\Database\Eloquent\Model;
    
    class TodoList extends Model {
    
        //insert public function listItems() here
    
    }
    

    希望这有用!

  • 0

    确保该文件位于正确的文件夹中,并且与要导入的类具有相同的名称 Headers .

    如果文件“TodoList”的 Headers 不是TodoList.php而是Todolist.php,例如,Laravel不会找到它 .

    根据您的设置运行“composer dump”可能有助于刷新自动加载文件 .

相关问题