Я знаю, что могу легко создать API в laravel, как показано ниже.
Http/Controllers/Api/MyApiController.php
use App\Model\MyModel;
class MyApiController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
$models = MyModel::all();
return $models;
}
....
routes/api.php
Route::group(['middleware' => ['api']], function(){
Route::resource('myTable', 'Api\MyApiController');
});
Но это кажется, что он имеет только основные * CRUD методы. Есть ли способ добавить пользовательский метод и вызвать его по некоторым запросам Http? Я имею в виду, если бы я добавил свой собственный метод, например, так:
public function myMethod()
{
$models = MyModel::all()->where('id', '>', 100)->get();
return $models;
}
Я хочу использовать его по такому запросу, как GET /api/MyMethod/{id}
. Кто-нибудь знает какие-либо способы без добавления маршрута к web.php
?
спасибо.