という名前のコントローラーがあり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() !!}
注: これは、エラーが発生する単一のファイルです。これはエラーです: アクション 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 でコードを試してみると、同じエラーが発生します。