如何在 Laravel 5 中调用模型


How do I call a model in Laravel 5?

我正在尝试掌握Laravel 5的窍门,并有一个问题可能很容易解决,但我正在努力。

我有一个名为 TestController 的控制器,它驻留在 ''app''Http''Controllers 中

这是控制器:

<?php 
namespace App'Http'Controllers;
class TestController extends Controller {
    public function test()
    {
    $diamonds = diamonds::find(1);
    var_dump($diamonds);
    }

}

然后我创建了一个驻留在/app 中的模型:

<?php
namespace App;

class diamonds extends Model {

}

把我确信存在的所有其他错误放在一边,我的问题是 laravel抛出了一个错误:

TestController中的FatalErrorException.php第10行:类 找不到"应用''http''控制器''菱形"

那么,如何让控制器理解我指向的是模型而不是控制器?

提前感谢...

必须使用命名空间在控制器中导入模型。

例如

use App'Customer;
class DashboardController extends Controller {
    public function index() {
        $customers = Customer::all();
        return view('my/customer/template')->with('customers', $customers);
    }
}

在您的情况下,您可以直接App'diamonds::find(1);使用模型,也可以先使用 use App'diamonds; 导入它,然后像以前一样使用它。

此外,建议使用大骆驼大小写类名。所以钻石而不是钻石。您还可以使用 dd()(转储和死亡)而不是 var_dump 来查看格式良好的变量转储。

  //Your model file
  <?php
    namespace App'Models;

    class diamonds extends Model {

    }
  // And in your controller
  <?php 
    namespace App'Http'Controllers;
    use App'Models'
    class TestController extends Controller {
    public function test()
    {
      $diamonds = diamonds::find(1);
      var_dump($diamonds);
    }
 }
尝试在

控制器文件中的类降级上方添加以下行...

use App'Diamonds;
use App'Http'Requests;
use App'Http'Controllers'Controller;
use Illuminate'Http'Request;

(这假设您的模型文件称为Diamonds.php

最终,这里有一些问题,你们所有人都有所帮助,但是我在模型页面上缺少以下内容:

use Illuminate'Database'Eloquent'Model;