天天看點

laravel中進行子產品開發

Laravel版本:laravel5.5.*

擴充包名稱:caffeinated/modules

1、加載擴充包,使用Composer進入項目根目錄,輸入指令:

composer require caffeinated/modules           

複制

    安裝成功後如圖:

laravel中進行子產品開發

在根目錄的composer.json中可以看到擴充包的名稱和版本:

laravel中進行子產品開發

2、打開config/app.php,手動添加兩行代碼:

'providers' => [
  ……
//子產品化
        Caffeinated\Modules\ModulesServiceProvider::class,
],
'aliases' => [
  ……
//子產品化
        'Modules' => Caffeinated\Modules\Facades\Module::class,
]           

複制

3、通過指令行建立子產品:

    指令:  php artisan make :module 後面寫子產品名稱  (示例中使用Admin)

    接下來如圖,會讓你填寫名稱、版本、描述之類的資訊,按自己的需求填寫即可,如圖:

laravel中進行子產品開發

生成的子產品如圖:

laravel中進行子產品開發

4、接下來進行使用測試:

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

namespace App\Modules\Admin\Http\Controllers;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

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

最後效果如圖

laravel中進行子產品開發

到這裡添加子產品就成功了,其它的依自己需要進行開發