Как использовать контроллеры вместо маршрутов, когда с пакетом dingo/api (https://github.com/dingo/api)?Dingo/api Laravel с контроллерами вместо маршрутов
В документации (https://github.com/dingo/api/wiki) используются только маршруты.
Как использовать контроллеры вместо маршрутов, когда с пакетом dingo/api (https://github.com/dingo/api)?Dingo/api Laravel с контроллерами вместо маршрутов
В документации (https://github.com/dingo/api/wiki) используются только маршруты.
Dingo - это просто расширение маршрутизатора Laravel, поэтому вы можете использовать контроллеры так же, как и в любом другом проекте Laravel.
Так что:
Route::api(['version' => 'v1', 'prefix' => 'api'], function()
{
Route::get('posts', function()
{
return Post::all();
});
});
стал бы:
Route::api(['version' => 'v1', 'prefix' => 'api'], function()
{
Route::get('posts', '[email protected]');
});
ли вы имеете в виду подключения контроллера к определенному маршруту динго? как это:
$api = app('Dingo\Api\Routing\Router');
затем следуют
$api->version('v1', function($api){
$api->get('posts', '[email protected]');
});
Но как-то Динго не может найти каталог контроллера, так что я сделать, это начать с App\
каталога, как это: App\Http\Controllers\[email protected]
.
поэтому правильный синтаксис будет
$api->get('posts', 'App\Http\Controllers\[email protected]');