[英]Laravel - Using Models and Controllers appropriately
在应用程序中,我正在研究三种路线:
Route::get('/people-and-teams', 'TeamsController@index');
Route::get('/people-and-teams/{team}', 'TeamsController@show');
Route::get('/people-and-teams/{team}/{person}', 'UserController@show');
因此,从本质上讲,您进入团队页面,该页面列出了所有团队,单击特定团队会加载有关该团队及其工作人员的详细信息,然后单击团队成员会为您提供该用户的个人资料。
桌子
链接
如您所见,在第三条路线中,我正在考虑使用UserController
但这是可行的,并且这样做有意义:
TeamsController
全部加载用户和个人资料之间的关系来获取个人资料信息。 有这样做的正确方法,还是我可以自由选择要使用的控制器?
如果不使用resource指令,则始终可以自由使用路由中的任何控制器。
简短的答案是,如果您可以直接呼叫特定用户,则可以这样做。
始终尝试避免调用关系,因为它们都会带来额外的处理成本。
因此,从性能角度考虑,如果在“团队”页面上,您需要调用远距离关系来获取user_id,而不是在特定人员页面上调用该关系,这可能会更好,因为这可能不会经常执行。
请注意,在实际情况下,这取决于用户的负载。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.