我在Http中创建了CustomerController,后来我固定路由来获取客户,但是在单个动作Controller中却出错。
我试图炫耀CustomerController视图以显示登录页面的客户
这是一条错误消息
使用未定义的常量视图-假定为“视图”(这将在以后的PHP版本中引发错误)
答案 0 :(得分:2)
好像您正在尝试使用旧方法来渲染刀片文件一样:-
return View::make('customers.index', $customersList);
要使用 view()方法
return view('admin.pages.customers.index',compact('someVaiable'));
OR
// You can define constant for your controller get methods
private $layout;
public function __construct()
{
$this->layout = 'admin.pages.customers.';
}
public function index(){
return view($this->layout.'index');
}
看看单个动作控制器示例
https://laravel.com/docs/5.8/controllers#single-action-controllers
答案 1 :(得分:1)
控制器中view方法的第一个参数应该是视图的名称。
Routes / web.php
Route::get('/', 'CustomerController');
app / Http / Controllers / CustomerController.php
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class CustomerController extends Controller
{
public function __invoke(Request $request)
{
return view('customers');
}
}
resources / views / customers.blade.php
<h1>Customers</h1>
答案 2 :(得分:0)
在刀片视图中,您是否在某处有以下行?
{{ view }}
应将其替换为您可能通过的变量,而不是在某个位置定义常量。
{{ $view }}
否则,请共享相关的源代码段,因为您的屏幕截图似乎未正确附加,如果没有任何更多信息,我们将无法为您提供帮助。