如何调用 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 抛出错误:
FatalErrorException in TestController.php line 10: Class
'App\Http\Controllers\diamonds' not found
那么,如何让控制器明白我指向的是模型而不是控制器?
提前致谢...
尝试在控制器文件中的 class 声明上方添加以下行...
use App\Diamonds;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
(假设您的模型文件名为 Diamonds.php
)
您必须使用命名空间将模型导入控制器。
例如
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;
导入它,然后像您已经使用的那样使用它。
此外,建议使用 UpperCamelCase class 名称。所以钻石而不是钻石。您还可以使用 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 Illuminate\Database\Eloquent\Model;
我正在尝试掌握 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 抛出错误:
FatalErrorException in TestController.php line 10: Class 'App\Http\Controllers\diamonds' not found
那么,如何让控制器明白我指向的是模型而不是控制器?
提前致谢...
尝试在控制器文件中的 class 声明上方添加以下行...
use App\Diamonds;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
(假设您的模型文件名为 Diamonds.php
)
您必须使用命名空间将模型导入控制器。
例如
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;
导入它,然后像您已经使用的那样使用它。
此外,建议使用 UpperCamelCase class 名称。所以钻石而不是钻石。您还可以使用 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 Illuminate\Database\Eloquent\Model;