php - Laravel 5.6 奇怪的行为 - 我重命名后 Laravel 看不到控制器
问题描述
我有一个名为RankController.php
. UsersController.php
当我想分离一些方法时,我手动重命名。然后我选择将其重命名为RankController.php
. 注意:我只改文件名,不改类名。这是控制器的代码。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Schema;
use App\User;
use App\Rank;
use App\Ban;
class RankController extends Controller
{
// Constructor function
public function __construct()
{
// Check if user is logged in
$this->middleware('auth');
}
public function search(Request $request)
{
$this->validate($request, ['search' => 'required', ]);
$users = User::select('id', 'name')->where([
['name', '!=', Auth()->user()->name],
['name', 'like', "%" . $request->input('search') . "%"],
])->paginate(10);
return view('rank.search')
->with('users', $users);
}
}
这里是我调用控制器的地方:
{!! Form::open(['action' => ['RankController@search'], 'method' => 'POST']) !!}
{{Form::text('search', '', ['placeholder' => 'Search a user'])}}
{{Form::submit('Search', ['class' => 'btn btn-primary'])}}
{!! Form::close() !!}
注意:这是我收到错误的单个文件。这是错误:Action App\Http\Controllers\RankController@search 未定义。(查看:/var/www/htdocs/Proiect/resources/views/layouts/app.blade.php) (查看:/var/www/htdocs/Proiect/resources/views/layouts/app.blade.php)
我在其他 PC 上尝试代码,它会产生相同的错误。
解决方案
我觉得你必须更新路线"UsersController"
并运行"composer dumpautoload
“
推荐阅读
- java - 如何在 Kafka MockConsumer 上测试提交?
- json - 如何使用 laravel 7 解决验证器中的 409 冲突
- git - 如何在 GitHub 上创建一个包含我的项目的组,并将前端和后端关联为该组(项目)的存储库?
- jenkins - jenkins 下一次重试开始时如何自动删除上次失败的构建
- python-3.x - 熊猫如何根据另一列中的字符串值创建计数和重置的新列
- r - 根据每行第 n 个位置值过滤/子集 R 数据帧
- laravel - Laravel Fractal 在响应中添加成功消息
- three.js - Three.js 地板网格未在移动设备上显示(iphone safari)
- android - 从安卓发送群发短信
- python - 在 Python 中对嵌套字典列表进行排序