| Install | |
|---|---|
composer require tmphp/rest-api-generators |
|
| PHP: | >=5.6.4 |
Code scaffolding for REST API project by database schema. This package is available also on packagist. And installation via packagist is preferred way.
There are two open source REST API projects on GitHub, developed using this generator:
"tmphp/rest-api-generators": "dev-master" to your composer.json (node "require")"minimum-stability": "dev" in your composer.jsoncomposer updateOpen your config/app.php and add this line in providers section
TMPHP\RestApiGenerators\GeneratorsServiceProviders::class,
Dingo\Api\Provider\LaravelServiceProvider::class,
Way\Generators\GeneratorsServiceProvider::class,
Xethron\MigrationsGenerator\MigrationsGeneratorServiceProvider::class,
Tymon\JWTAuth\Providers\JWTAuthServiceProvider::class,
L5Swagger\L5SwaggerServiceProvider::class,
Abhijitghogre\LaravelDbClearCommand\LaravelDbClearCommandServiceProvider::class,
Felixkiss\UniqueWithValidator\ServiceProvider::class,
Execute command
php artisan vendor:publish
Open your config/jwt.php and change line with a user's model namespace.
'user' => 'App\REST\User',
API_DOMAIN=yourdomain.devAdd middleware to App/Http/Kernel.php to the $routeMiddleware array.
'check.role.access' => \TMPHP\RestApiGenerators\Middleware\CheckAccess::class,
Add '/routes' path in 'config/l5-swagger.php', annotation path.
'annotations' => [base_path('app'), base_path('routes')],
Make sure, that you have created database schema. For generating relations you should have FOREIGN KEY Constraints.
php artisan make:rest-api-project
php artisan l5-swagger:generate
composer dump-autoload