【问题标题】:Laravel CRUD error on Selecting data from Database从数据库中选择数据的 Laravel CRUD 错误
【发布时间】:2014-08-19 09:50:09
【问题描述】:

我只是用以下代码开发一个 Laravel CRUD 应用程序

Student.php(控制器页面)

class Student extends BaseController
    {
    public $restful=true;

    public function index()
    {
        return View::make('student.index')
        ->with('students',Student::all());
    }
}

Student.php(模型页面)

class Student extends Eloquent
{
   public static $table='students';
}

index.blade.php(查看页面)

 <h1>Student home page</h1>
 <ul>
   @foreach($students as $student)
     <li>{{ $student -> name}}</li>
   @endforeach
 </ul>

Routes.php

Route::get('test',array('uses'=>'student@index'));

i 指向浏览器,例如 localhost/laravel/public/test

它显示像

这样的错误
Method [all] does not exist.

我有像“学生”这样的桌子 和字段是

 - id
 - name
 - class
 - division

任何人请帮助我...

【问题讨论】:

  • 能否请您发布确切的错误信息
  • BadMethodCallException 方法 [all] 不存在。
  • 你跑composer dump-autoload了吗?
  • no..跑步需要吗
  • 是的——在你创建了新的类(比如模型)之后——你需要运行它。

标签: laravel crud


【解决方案1】:

你已经为你的控制器和模型复制了你的“学生”类名,所以 Laravel 很困惑。您应该将控制器更改为 StudentController 以避免冲突

class StudentStudent extends BaseController

别忘了更新你的路线文件

Route::get('test',array('uses'=>'StudentController@index'));

【讨论】:

  • 然后将 $table 更改为 $table1
【解决方案2】:

你应该使用命令行工具创建你的控制器:php artisan

在终端中使用以下命令:

php artisan make:controller StudentController --resource

这将在 app/Http/Controllers/StudentController.php 中创建一个带有样板代码的控制器文件

如果您只想要一个空白控制器,则不要添加 --resource 部分

如果您需要了解更多信息,可以在此处获得完整的 CRUD 功能 http://deepdivetuts.com/basic-create-edit-update-delete-functionality-laravel-5-3

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-30
    • 1970-01-01
    • 1970-01-01
    • 2018-02-06
    • 1970-01-01
    相关资源
    最近更新 更多