Php 供应商文件夹中的控制器-我的控制器-正确的方法是什么?
因此,我使用github ticketit()中的一个包,该包包含控制器 我将其集成到fresh laravel应用程序中 现在,我想在我的应用程序中添加一个API端点,我的问题是 我应该从供应商目录中的ticketit包复制控制器并创建我的app/http/controllers文件夹,还是应该访问供应商中的控制器?或者有什么好的设计我应该做 所以我计划做的是Php 供应商文件夹中的控制器-我的控制器-正确的方法是什么?,php,laravel,api,design-patterns,Php,Laravel,Api,Design Patterns,因此,我使用github ticketit()中的一个包,该包包含控制器 我将其集成到fresh laravel应用程序中 现在,我想在我的应用程序中添加一个API端点,我的问题是 我应该从供应商目录中的ticketit包复制控制器并创建我的app/http/controllers文件夹,还是应该访问供应商中的控制器?或者有什么好的设计我应该做 所以我计划做的是 Route::get('api/v1/getdata','TicketsController@data'); Route::get(
Route::get('api/v1/getdata','TicketsController@data');
Route::get('/getdata','TicketsController@data');
请帮忙设计
如果我试图编辑供应商文件夹中的控制器并将其上载到服务器中,确保不会上载
顺便说一句,我使用的是Laravel 5.4和Laravel passport。,您可以使用它指向您自己的自定义控制器
您可以通过更改管理面板设置->配置->初始->路由
例如:
如果要更改单个节目的行为,则可能需要更改TicketsController@show
方法
Kordy\Ticketit\Controllers\ticketcontroller
vendor/kordy/ticketit/src/routes.php
复制到App\Http\ticketit\u routes.php
$main\u route\u path
类更改为新的自定义类:route::resource($main\u route\u path,'App\Http\Controllers\SomeController',…
settings->configuration->Initial->routes
,并将路由设置为app/Http/ticketit_routes.php
文件的完整路径您可以直接使用用户
Route::get('path','Kordy\Ticketit\Controllers\TicketsController@data')
是的,但是如果我想修改票证控制器,并且如果我在服务器中上传它以确保供应商不会被上传。我如何修改它并上传更改?通常你不应该修改供应商文件。你可以创建新的控制器,然后包括(扩展)来自供应商的控制器。然后,您可以覆盖现有函数,并在路由中调用此新方法。对此方法不是100%确定,但我认为这可能会起作用。我明白了,所以在这种情况下,我必须从供应商文件复制控制器以覆盖这些方法,并创建if($request-wantsJson())返回响应()else render view..感谢您的帮助@Timook,它不起作用,我已经从供应商包的控制器扩展了我的控制器,但它仍然重定向到包的控制器,包中也有路由。有什么想法吗?