Маршрут перенаправляет на неправильную страницу - PullRequest
1 голос
/ 05 августа 2020

Я работаю над Laravel 5 и настроил маршруты для всех страниц. У меня есть панель инструментов, на которой есть определенные значки, которые при нажатии перенаправляют на разные страницы. Теперь этот конкретный значок «Всего приложений» при нажатии не перенаправляет на связанную с ним страницу, то есть total.blade. php, а вместо этого перенаправляет на другую страницу кандидата.blade. php.

Я новичок в Laravel. Я хочу, чтобы при нажатии на страницу «Всего приложений» она перенаправлялась на страницу, предназначенную для нее.

Я использую следующие коды:

dashboard.blade. php файл :

<div class="col-md-4">
    <div class="single-dashboard-link card card-default p-3 text-center" onclick="location.href='{{route('employers.total')}}'">
        <i class="fa fa-file-text font30"></i>
        <h6>
        {{ $user->employerJobApplications()->count() }} Total
        </h6>
        <p>
        Applications
        </p>
    </div>
</div>

Файл маршрута, содержащий маршруты для обеих страниц: -

Route::get('/total-applications', 'Frontend\EmployersController@totalApplications')->name('employers.total');
Route::get('/{status}', 'Frontend\EmployersController@candidatesDisplay')->name('employers.candidate');

Мой контроллер, содержащий logi c для страницы Total Applications: -

public function totalApplications() {
        if (!Auth::check()) {
            session()->flash('error', 'Sorry !! You are not an authenticated Employer !!');
            return back();
        }
        $user = Auth::user();
        $user_id = $user->id;
        $applicant = JobActivity::where('user_id',$user_id)->get();
        return view('frontend.pages.employers.total', compact('user', 'applicant'));
}

1 Ответ

3 голосов
/ 05 августа 2020

Хорошо. давайте объясним это

Route::get('/{status}', 'Frontend\EmployersController@candidatesDisplay')->name('employers.candidate');

этот маршрут принимает параметр status например

example.com/pending
example.com/active
example.com/suspended

а как насчет total-applications может быть это параметр? да, может быть, почему бы и нет, поэтому маршрут будет

example.com/total-applications, который перенаправляет на Frontend\EmployersController@candidatesDisplay, что приводит к candidate.blade.php не total.blade.php, вы можете решить его, добавив любой префикс перед {status}

Обратите внимание на , что любая конечная точка, которую вы вызываете, попадет в этот маршрут /{status}, поскольку этот маршрут принимает любой путь, по которому вы попадете.

...