gpt4 book ai didi

laravel - laravel 中的 show 方法返回 index 方法

转载 作者:搜寻专家 更新时间:2023-10-30 22:54:33 25 4
gpt4 key购买 nike

我在 Laravel 5.7 的资源 Controller 中尝试使用 show 方法时遇到问题。我正在使用 VueJS 和 axios 来处理 http 请求。调用 index 方法而不是 show 方法。我通过了使用 get 方法和 ID 参数的调用。

路线:

POST      | products                                | products.store                    | App\Http\Controllers\ProductoController@store                             | web          |
| | GET|HEAD | products/create | products.create | App\Http\Controllers\ProductoController@create | web |
| | DELETE | products/{product} | products.destroy | App\Http\Controllers\ProductoController@destroy | web |
| | PUT|PATCH | products/{product} | products.update | App\Http\Controllers\ProductoController@update | web |
| | GET|HEAD | products/{product} | products.show | App\Http\Controllers\ProductoController@show | web |
| | GET|HEAD | products/{product}/edit | products.edit | App\Http\Controllers\ProductoController@edit | web |

web.php:


Route::get('/', function () {
return view('welcome');
});

Auth::routes();

Route::get('/home', 'HomeController@index')->name('home');

//Productos
Route::resource('products', 'ProductoController');
Route::get('duplicar/{param?}', 'ProductoExtController@duplicar');
Route::post('mostrarProductos', 'ProductoExtController@mostrarProductos');
Route::post('guardarValoresEditados', 'ProductoExtController@guardarValoresEditados');
Route::get('imprimirListadoPrecios', 'ProductoExtController@imprimirListadoPrecios');
Route::post('mostrarProductosStickers', 'ProductoExtController@mostrarProductosStickers');
Route::post('imprimirStickers','ProductoExtController@imprimirStickers');



//Colecciones
Route::resource('colecciones', 'ColeccionController');

//Categorias
Route::resource('categorias', 'CategoriaController');

//Crostas
Route::resource('crostas', 'CrostaController');
Route::get('crostasaut/{param?}', 'CrostaExtController@autocomplete');

//Folias
Route::resource('folias', 'FoliaController');
Route::get('foliasaut/{param?}', 'FoliaExtController@autocomplete');

Route::get('{path}', 'HomeController@index')->where('path','([A-z\d-\/_.]+)?');

这是我使用 axios 的 http 请求:

editarProducto(pDatosFila){
axios.get('products', {
params: {
id: pDatosFila.f014_id
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
})
.then(function () {
// always executed
});
}

最后是响应:

current_page: 1
data: [{f014_id: 25, f014_id_old: null, f014_nombre: "carlos ruales", f014_deleted: null,…},…]
first_page_url: "http://localhost:8000/products?page=1"
from: 1
last_page: 1
last_page_url: "http://localhost:8000/products?page=1"
next_page_url: null
path: "http://localhost:8000/products"
per_page: 10
prev_page_url: null
to: 7
total: 7

最佳答案

你目前正在做的是:

axios.get('products', {
params: {
id: pDatosFila.f014_id
}
})

等同于:axios.get('/products?id=id')(格式不正确)

你需要做的是:

axios.get('/products/product_id')

所以,你可以这样做:

axios.get('products/'+ pDatosFila.f014_id)

这会奏效。 :)

PS:请始终检查浏览器中开发者工具中的网络选项卡。

引用:axios

关于laravel - laravel 中的 show 方法返回 index 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55369802/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com