Laravel控制器方法和路由的最佳命名约定

我正在创建一个ajax请求以获取商品详细信息

这是我的控制器方法的样子。

class SystemItemsController extends Controller
  {
      function getDetails(Request $request){
       $response =  SystemItems::where('item_name','like','%' .$name . '%')->get();
       return response()->json($response,200);
  }

  }

和我的

路由名称

Route::get("/system-items/item-details","SystemItemsController@getStockDetails");

问题:什么是我的路线( item-details )和方法( getStockDetails )的最佳命名约定?

跟进问:我可以使用laravel资源吗?

huazhua88225 回答:Laravel控制器方法和路由的最佳命名约定

您可以在URI模式中使用kebab-case和plural,但是对于Controller name,请使用camelCase和单数,这是Laravel在尝试进行路由模型绑定时将查找的内容。

您可以将其用于资源路线,但请注意,此路线

Route::resource('item-details','ItemDetailController');

route参数将导致使用蛇形大小写和单数形式

/item-details/{item_detail}

对于控制器方法,常规名称为indexshowcreatestoreeditupdate和{{1 }}。还有供自定义方法使用的snakeCase。

此外,您还可以添加路由组,以使用诸如delete

之类的uri作为前缀。
/system-items

运行Route::group(['prefix' => 'system-items'],function () { Route::resource('item-details','ItemDetailController'); }); 以查看结果

php artisan route:list

当然,所有这些都是约定,您可以通过手工操作并使用自己的约定来自定义所有内容。

本文链接:https://www.f2er.com/3043182.html

大家都在问