Здравствуйте, я пытаюсь отправить запрос AJAX на свой store
, но вместо этого он отправляется на show
function submitForm() {
$.ajax({
type: 'POST',
url: 'laptop/andy',
data: {
routing: 'createM',
type: $('#type').val(),
body: $('#body').val()
}
})
}
И если я попытаюсь оптимизировать php artisan, я получаю эту ошибку:
LogicException : Unable to prepare route [api/user] for serialization. Uses Closure.
at C:\xampp\htdocs\blog\vendor\laravel\framework\src\Illuminate\Routing\Route.php:917
913| */
914| public function prepareForSerialization()
915| {
916| if ($this->action['uses'] instanceof Closure) {
> 917| throw new LogicException("Unable to prepare route [{$this->uri}] for serialization. Uses Closure.");
918| }
919|
920| $this->compileRoute();
921|
Странно то, что даже несмотря на то, что я закомментировал show
из контроллера, движок все еще распознает маршрут как действительный.
<?php
Auth::routes();
Route::group(['middleware' => 'auth'], static function () {
Route::get('/', 'HomeController@index')->name('home');
Route::get('requestSent', 'TicketController@requestSent')->name('requestSent');
Route::get('requestBusy', 'TicketController@requestBusy')->name('requestBusy');
Route::get('requestAccepted', 'TicketController@requestAccepted')->name('requestAccepted');
Route::get('requestDone', 'TicketController@requestDone')->name('requestDone');
Route::resource('ticket', 'TicketController');
Route::get('/phpmyadmin', static function () {
return view('phpmyadmin');
})->name('phpMyAdmin');
Route::resource('laptop', 'LaptopController');
Route::resource('user', 'UserController');
Route::get('/servicepakket', static function () {
return view('servicepakket');
})->name('service');
Route::get('requestRecent', static function () {
return view('test');
});
});
/laptop
, а не/laptop/andy
. - person porloscerros Ψ   schedule 31.10.2019store
в вашемLaptopController
? - person victorf   schedule 31.10.2019'{{ route("laptop.store") }}'
? - person victorf   schedule 31.10.2019artisan optimize
убедитесь, что ни один из ваших маршрутов (как вroutes/web.php
, так и вroutes/api.php
не содержит замыканий) маршрутизация" rel="nofollow noreferrer">документация Laravel, если вы не знаете, что такое замыкание маршрута). Маршруты с замыканиями не позволяют работать таким командам, какartisan optimize
иartisan route:cache
. - person Alex   schedule 31.10.2019/phpmyadmin
,/servicepakket
и/requestRecent
все имеют замыкания, и это только вroutes/web.php
. Учитывая ошибку, вroutes/api.php
есть маршрут, использующий замыкания. - person Alex   schedule 31.10.2019static function () {}
и все, что внутри него. Если вы удалите эти биты и переместите их в контроллеры, вызывая их так же, как и с другими маршрутами (например,Route::get('/phpmyadmin', 'HomeController@phpmyadmin')->name('phpmyadmin')
, вы сможете запустить командуoptimize
. - person Alex   schedule 31.10.2019