Я создаю страницу редактирования, используя PHP Laravel 5.8. Я создал маршруты и URL-адрес, но появляется ошибка 404 не найден - PullRequest
0 голосов
/ 06 июня 2019

Я изучаю Laravel, создав приложение для работы. И я пишу код компании для редактирования своего поста. Теперь я могу перейти на URL, ex) http://localhost:8000/jobs/23/edit. Но на экране мне показывает 404|not found сообщение об ошибке

Это снимок экрана

для редактирования страницы я создал views / jobs / edit.blade.php.

Конечно, данные четко вставлены в мою рабочую таблицу.

Я попытался очистить весь кеш и выполнил следующие команды.

1. composer dump-autoload

2. php artisan clear-compiled

3. php artisan optimize

4. php artisan config:cache

web.php

Route::get('/jobs/{id}/edit', 'JobController@edit')->name('job.edit');

JobController.php

public function edit($id)
{
    $jobs = Job::findOrFail($id);
    return view('jobs.myjob',compact('jobs'));
}

мой-job.blade.php У меня есть кнопка редактирования, и следующий код - это ссылка.

{{route('job.edit',[$job->id])}}

Моя среда - Windows, XAMPP и локальный сервер MySQL.

Ответы [ 3 ]

1 голос
/ 06 июня 2019

попробуйте так:

<a href="{{route('job.edit',['id'=>$job->id])}}">Edit Job {{$job->id}}</a>

вы можете очистить кеш маршрутов:

php artisan route:clear

обновление: выполните следующую команду, чтобы очистить кеш

php artisan config:clear
php artisan cache:clear
0 голосов
/ 06 июня 2019

Возможно, проблема в строке return view('jobs.myjob',compact('jobs')); в вашем JobController.php, она возвращает следующее представление: resources/views/jobs/myjob.blade.php (которого, вероятно, не существует).

попробуйте изменить строку return view('jobs.myjob',compact('jobs'));на return view('jobs.edit',compact('jobs'));, после изменения это относится к resources/views/jobs/edit.blade.php, и это должно решить вашу проблему.

0 голосов
/ 06 июня 2019

Наконец-то я смог решить эту проблему.

  1. Я перешел на новый маршрут.

    Route :: get ('/ test-jobs / {id} /edit ',' JobController @ edit ') -> name (' test-job.edit ');

  2. Я создал новый blade-сервер, подобный этому, views / test-jobs / edit.blade.php

  3. Я также изменил JobController.php

    редактирование публичной функции ($ id) {$ jobs = Job :: findOrFail ($ id);обратный просмотр ('test-jobs.edit', compact ('jobs'));}

И, наконец, my-job.blade.php, на котором есть кнопка редактирования, подобная этой.

 <a href="{{route('test-jobs.edit',[$job->id])}}"><button class="btn btn-dark">Edit</button></a>

Но, тем не менее, я не знаю, почемусработало.

А также, я думаю, мне нужно другое решение.Потому что таким образом мне нужно было создать еще одну новую папку в представлениях.

Так что, если кто-то знает другое решение, пожалуйста, дайте мне знать.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...