php - 找不到 Laravel 5.2 自定义包路由

标签 php model-view-controller laravel-routing laravel-5.2

我按照文档创建了一个自定义包。 ( https://laravel.com/docs/5.2/packages#routing )

我在自定义路由文件中添加了一个路由,它在使用“php artisan route:list”检查时出现,但我得到 NotFoundHttpException。

我使用“php artisan route:clear”来清除路由缓存,但问题仍然存在。

如果我在主应用程序路由文件中添加路由,则工作正常。

服务提供商:

/**
 * Bootstrap the application services.
 *
 * @return void
 */
public function boot()
{
    $this->publishes([
        __DIR__ . '/../database/migrations/' => database_path('migrations')
    ], 'migrations');

    if (! $this->app->routesAreCached()) {
        require __DIR__.'/../Http/routes.php';
    }
}

自定义路由文件:

Route::get('foo', function () {
    return 'Hello World';
});

最佳答案

对于您在此处提供的信息,我不能只给出明确的答案。

如果你的包结构是这样的

PackageMainDir
  - src
    - Controllers
    - Migrations
    - Models
    PackageServiceProvider.php
    Routes.php
  - test
  - vendor
  composer.json
  phpunit.xml

您的 PackageServiceProvider.php 中将包含以下代码:

/**
 * Bootstrap the application services.
 *
 * @return void
 */
public function boot()
{
    $this->publishes([
        realpath(__DIR__.'/Migrations') => $this->getDatabasePath().'/migrations',
    ]);

    if (! $this->app->routesAreCached()) {
        require_once(__DIR__ . '/Routes.php');
    }
}

我希望不要迟到,否则其他用户将从我的回答中获益。

关于php - 找不到 Laravel 5.2 自定义包路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35970906/

相关文章:

grails - 如何将域约束注入(inject) Grails GSP?

php - 如果...elseif 不能在超过 2 个条件下工作?

php - MVC : models interacts with the view?

java - 程序中传递消息的数据结构?

php - Laravel 5.1 通配符路由

php - Laravel 5 收银员中间件路由错误

php - 从 URL Laravel 5 中删除 index.php

php - 在 php 中处理 Tinyint

php - 第一次需要建立一个全面的电子商务页面--Magento?

javascript - AngularJS 使用 resolve 验证多条路由