无法识别的阶级 - laravel Eloquent Model

时间:2015-10-06 21:55:19

标签: php class laravel-5 eloquent laravel-routing

我正在尝试使用Eloquent模型更新我的数据库但是无法识别该类。

首先我使用迁移创建了我的表,并且工作正常。下面是代码     使用Illuminate \ Database \ Schema \ Blueprint;     使用Illuminate \ Database \ Migrations \ Migration;

class CreatePaintings extends Migration
{
/**
 * Run the migrations.
 *
 * @return void
 */
 public function up()
 {
    Schema::create('paintings',function($thepainting){
            $thepainting->increments('id');
            $thepainting->string('title');
            $thepainting->string('artist');
            $thepainting->integer('year');
            $thepainting->timestamps();

    });
 }

 /**
 * Reverse the migrations.
 *
 * @return void
 */
public function down()
{
    Schema::drop('paintings');
}
}

接下来,我创建了一个类" paint"使用该模型。但请注意,最近版本的laravel没有明确指定模型文件夹。因此,当我在命令提示符下运行下面的代码时,我能够创建绘图类

php artisan make:model paint

最后,我尝试使用下面的代码通过routes.php更新创建的表格,绘画。

Route::get('/', function() 
{
$paintings = new Paint;
$paintings->title = 'Emmanuel';
$paintings->artist = 'D. DoRight';
$painitngs->year = 2014;
$paintings->save();

return view('trynn');

});


 Route::get('about/directions', function() 
 {
 return "Direction content goes here";
  });

 Route::get('about/{theSubject}', function($theSubject) 
  {  
  return $theSubject. " content goes here";

  });

请我是laravel的新手,所以我将非常感谢您解决这个问题。我现在被困了。为免我遗忘,错误信息如下所示

糟糕,看起来出了问题。

1/1 routes.php第18行中的FatalErrorException: Class' Paint'找不到

在routes.php第18行

2 个答案:

答案 0 :(得分:0)

啊,这是一个简单的错误。如果不是全部,可以复制粘贴文件的全部内容。

此错误也是因为您没有从自动加载器中引入该类。在Laravel中,一切都是命名空间。在您的Paint Model中,您将看到namespace App,如果您将Paint模型移动到模型目录中,则需要命名类App\Models;

要修复此错误,请在routes.php文件的顶部写下use App\Paint;。但是您应该将该路由发送到控制器以将代码与路由分开。

如果有帮助,请告诉我。

答案 1 :(得分:0)

没有找到类疼痛是正常的,请检查你在这里做了什么:

php artisan make:model paint

并在您的路线文件中:

$paintings = new Paint;

尝试将您的模型类名称更正为此画图,并且当您想要实例化时,默认情况下不会忘记生成的模型类的命名空间,因此您的路径文件将如下所示

Route::get('/', function() 
{
      $paintings = new App\Paint;
      $paintings->title = 'Emmanuel';
      $paintings->artist = 'D. DoRight';
      $painitngs->year = 2014;
      $paintings->save();
      return view('trynn');

});