Привет, друзья. Я новичок в области Laravel.
i создаю каталог модулей в папке приложения.
то я также создаю файл ServiceProvider.php в каталоге модулей.
моя файловая структура.
app\modules\ServiceProvider.php
Это код ServiceProvider.php.
<?php
namespace App\Modules;
abstract class ServiceProvider extends \Illuminate\Support\ServiceProvider {
public function boot() {
if ($module = $this->getModule(func_get_args())) {
$this->package("app/" . $module, $module, app_path() . "/modules/" . $module);
}
}
public function register() {
if ($module = $this->getModule(func_get_args())) {
$this->app["config"]->package("app/" . $module, app_path() . "/modules/" . $module . "/config");
// Add routes
$routes = app_path() . "/modules/" . $module . "/routes.php";
if (file_exists($routes))
require $routes;
}
}
public function getModule($args) {
$module = (isset($args[0]) and is_string($args[0])) ? $args[0] : null;
return $module;
}
}
Затем я создаю новый каталог точек в каталоге модулей.
а также создайте файл ServiceProvider.php в каталоге точек.
Это код файла ServiceProvider.php.
<?php
namespace App\Modules\Points;
class ServiceProvider extends \App\Modules\ServiceProvider {
public function register() {
parent::register("points");
}
public function boot() {
parent::boot("points");
}
}
Затем теперь я пытаюсь загрузить проект, я получил ошибку, как.
Class 'App\Modules\ServiceProvider' not found
Symfony\Component\Debug\Exception\FatalErrorException
…/app/modules/points/ServiceProvider.php5
Я также добавляю автозагрузку в файл composer.json, например.
"autoload": {
"classmap": [
"app/modules"
]
},
Затем также запустите эту команду.
composer dump-autoload
но потом не работает.
Я также зарегистрирую свой ServiceProvide в app.php как.
'providers' => array(
'App\Modules\Points\ServiceProvider'
),
сообщите, где я делаю ошибку.
спасибо.