浏览代码

Make auto docs routes compatible with Lumen (fixes #206)

shalvah 4 年之前
父节点
当前提交
10bda0e6e9
共有 2 个文件被更改,包括 19 次插入3 次删除
  1. 16 0
      routes/lumen.php
  2. 3 3
      src/ScribeServiceProvider.php

+ 16 - 0
routes/lumen.php

@@ -0,0 +1,16 @@
+<?php
+
+use Knuckles\Scribe\Http\Controller;
+
+$prefix = config('scribe.laravel.docs_url', '/docs');
+$middleware = config('scribe.laravel.middleware', []);
+
+$router = app()->router;
+
+$router->group([
+    'middleware' => $middleware
+], function () use ($router, $prefix) {
+    $router->get($prefix, ['uses' => [Controller::class, 'webpage'], 'as' => 'scribe']);
+    $router->get("$prefix.postman", ['uses' => [Controller::class, 'postman'], 'as' => 'scribe.postman']);
+    $router->get("$prefix.openapi", ['uses' => [Controller::class, 'openapi'], 'as' => 'scribe.openapi']);
+});

+ 3 - 3
src/ScribeServiceProvider.php

@@ -7,6 +7,7 @@ use Knuckles\Scribe\Commands\GenerateDocumentation;
 use Knuckles\Scribe\Commands\MakeStrategy;
 use Knuckles\Scribe\Matching\RouteMatcher;
 use Knuckles\Scribe\Matching\RouteMatcherInterface;
+use Knuckles\Scribe\Tools\Utils;
 
 class ScribeServiceProvider extends ServiceProvider
 {
@@ -56,9 +57,8 @@ class ScribeServiceProvider extends ServiceProvider
             config('scribe.type', 'static') === 'laravel' &&
             config('scribe.laravel.add_routes', false)
         ) {
-            $this->loadRoutesFrom(
-                __DIR__ . '/../routes/laravel.php'
-            );
+            $routesPath = Utils::isLumen() ? __DIR__ . '/../routes/lumen.php' : __DIR__ . '/../routes/laravel.php';
+            $this->loadRoutesFrom($routesPath);
         }
     }
 }