­

laravel中进行模块开发

  • 2020 年 3 月 17 日
  • 筆記

Laravel版本:laravel5.5.*

扩展包名称:caffeinated/modules

1、加载扩展包,使用Composer进入项目根目录,输入命令:

composer require caffeinated/modules

    安装成功后如图:

在根目录的composer.json中可以看到扩展包的名称和版本:

2、打开config/app.php,手动添加两行代码:

'providers' => [    ……  //模块化          CaffeinatedModulesModulesServiceProvider::class,  ],  'aliases' => [    ……  //模块化          'Modules' => CaffeinatedModulesFacadesModule::class,  ]

3、通过命令行创建模块:

    命令:  php artisan make :module 后面写模块名称  (示例中使用Admin)

    接下来如图,会让你填写名称、版本、描述之类的信息,按自己的需求填写即可,如图:

生成的模块如图:

4、接下来进行使用测试:

在app/Modules/Admin/Http/Controllers中添加控制器IndexController

namespace AppModulesAdminHttpControllers;    use AppHttpControllersController;  use IlluminateHttpRequest;    class IndexController extends Controller{      //首页      public function index(){          return view("admin::index.index");      }  }

在app/Modules/Admin/Routes/web.php中添加访问的路由

Route::group(['prefix' => 'admin'], function () {      /*Route::get('/', function () {          dd('This is the Admin module index page. Build something great!');      });*/      //访问首页      Route::get('/index', 'IndexController@index');  });

在app/Modules/Admin/Resources/Views中添加index文件夹,并在里面添加index.blade.php模板文件

<html>  	<head>  		<title>测试一个首页</title>  		<meta name="csrf-token" content="{{ csrf_token() }}"/>  	</head>  	<body>  		<form action="" method="post">  			{{ csrf_field() }}  			<input type="text" name="username" id="username" value="test" />  			<input type="submit" value="提交"/>  		</form>  	</body>  </html>

输入您本地指定的域名地址进行访问,我这里进行了重定向访问:http: //www.test.com/admin/index

最后效果如图

到这里添加模块就成功了,其它的依自己需要进行开发