Lumen企業站內容管理實戰 許可權管理

2021-10-02 02:29:27 字數 2773 閱讀 6365

許可權管理

話不多說,先上路由

// 許可權

$router->get('/permission/list', 'permissioncontroller@lists'); // 許可權列表

$router->addroute(['get', 'post'],'/permission/add', 'permissioncontroller@add'); // 新增許可權

$router->addroute(['get', 'post'],'/permission/edit/', 'permissioncontroller@edit'); // 編輯許可權

$router->post('/permission/del', 'permissioncontroller@del'); // 刪除許可權

開啟許可權模型,新增lists方法,因為模型我們前邊已經新建好了

<?php 

use illuminate\database\eloquent\model;

class permission extends model

public static function lists(array $conditions, int $page = 0, int $parpage = 10)

%"); // 模糊匹配查詢

$permission->orderby('id', 'desc');

return $permission->paginate($parpage, ['*'], 'page', $page);}}

新建許可權控制器,並且寫乙個列表方法

}在許可權檢視目錄下新建乙個list.blade.php檔案,效果如下

新增許可權

在許可權模型中,新加乙個add()方法,用於儲存許可權。這幾個欄位都是必填項,所以不做判斷了。

public static function add(array $data)

許可權控制器中,寫乙個add()方法

public function add(request $request)

$data['menu'] = menu::lists();

return view('admin.permission.add', $data);

}

在許可權檢視目錄下,新建乙個add.blade.php檔案,效果如下

新增許可權看看

可以,沒問題。那個路徑,就是在路由檔案中定義的,要保持一致。

在看看編輯

在許可權模型中,新增編輯方法edit()

public static function edit(permission $permission, $data)

在許可權控制器中新增編輯方法edit()

public function edit(int $id, request $request)

if ($request->post())

$data['menu'] = menu::lists();

$data['permission'] = $permission;

return view('admin.permission.edit', $data);

}

在許可權檢視目錄新增edit.blade.php檔案,效果如下

最後,做刪除,刪除要注意了,如果要刪除許可權,那麼角色許可權關係表中也要刪除對應的許可權。刪除許可權,使用事務,保持資料的一致性。事務的話,我們使用db::transaction()。在許可權模型中,新增del()方法

public static function del(array $ids)

);} catch (\exception $e)

return true;

}

如果事務出現問題,會被丟擲異常,那麼資料就會回滾。

在許可權控制器中,新增del方法

public function del(request $request)

return $this->response->responsejson();

}

我們刪除試試看

全部刪除了。

完。 

Lumen企業站內容管理實戰 文章列表

文章的新增 我們還沒有建立文章的資料表,那麼我們使用資料遷移生成一張文章資料表,老規矩,命令行走起。php artisan make migration create articles table新增字段 use illuminate database migrations migration us...

Lumen企業站內容管理實戰 文章新增

文章新增 在article控制中新增乙個新增方法add 新增文章 分類資訊,用於選擇分類,因為在新增頁面有乙個選擇分類。category category getcategorychildrenidsbyparentid 0 data category category return view ad...

Lumen企業站內容管理實戰 文章更新

文章更新 在文章控制器中新增edit 方法 修改文章 分類資訊,用於選擇分類,因為在新增頁面有乙個選擇分類。category category getcategorychildrenidsbyparentid 0 data category category data article article...