You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
61 lines
1.8 KiB
61 lines
1.8 KiB
<?php
|
|
|
|
/**
|
|
* Vue js Trial
|
|
*/
|
|
/** Index Page */
|
|
Route::get('options-vue', function() {
|
|
return view('options.index-vue');
|
|
});
|
|
|
|
Route::group(['prefix'=>'api/options'], function() {
|
|
Route::match(['GET','POST'], '/', function() {
|
|
if (Request::isMethod('GET'))
|
|
return App\Entities\Options\Option::all();
|
|
else {
|
|
return App\Entities\Options\Option::create(Request::only('key','value'));
|
|
}
|
|
});
|
|
|
|
Route::match(['GET','PATCH','DELETE'], '/{id}', function($id) {
|
|
if (Request::isMethod('GET'))
|
|
return App\Entities\Options\Option::findOrFail($id);
|
|
else if (Request::isMethod('PATCH')) {
|
|
App\Entities\Options\Option::findOrFail($id)->update(Request::only('key','value'));
|
|
return Response::json(Request::all());
|
|
} else {
|
|
return App\Entities\Options\Option::destroy($id);
|
|
}
|
|
});
|
|
});
|
|
|
|
// /** Fetch all options (API) */
|
|
// Route::get('api/options', function() {
|
|
// return App\Entities\Options\Option::all();
|
|
// });
|
|
|
|
// /** Create new options (API) */
|
|
// use App\Http\Requests\Options\CreateRequest;
|
|
// Route::post('api/options', function(CreateRequest $req) {
|
|
// return App\Entities\Options\Option::create($req->only('key','value'));
|
|
// });
|
|
|
|
// /** get one option (API) */
|
|
// Route::get('api/options/{id}', function($id) {
|
|
// return App\Entities\Options\Option::findOrFail($id);
|
|
// });
|
|
|
|
// /** update one option (API) */
|
|
// use Illuminate\Http\Request;
|
|
// Route::patch('api/options/{id}', function(Request $req, $id) {
|
|
// return App\Entities\Options\Option::findOrFail($id)->update($req->only('key','value'));
|
|
// });
|
|
|
|
// /** delete one option (API) */
|
|
// Route::delete('api/options/{id}', function($id) {
|
|
// App\Entities\Options\Option::destroy($id);
|
|
// return 'ok';
|
|
// });
|
|
|
|
|
|
/** end of Vue js Trial */
|