本文整理匯總了PHP中app\models\Group::get_group_power方法的典型用法代碼示例。如果您正苦於以下問題:PHP Group::get_group_power方法的具體用法?PHP Group::get_group_power怎麽用?PHP Group::get_group_power使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類app\models\Group
的用法示例。
在下文中一共展示了Group::get_group_power方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: edit
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit(Request $request, $id)
{
//
$oGroup = Group::findOrFail($id);
// 需要更新的組
$powers = Group::get_group_power($id);
// 組擁有的權限
$oAllPowers = Power::select(['id', 'category', 'name'])->get();
// 全部的權限
// 按分類分開
$aCategoryPowers = array();
foreach ($oAllPowers as $k => $v) {
$aCategoryPowers[$v->category][] = ['id' => $v->id, 'name' => $v->name];
}
if ($request->isMethod('get')) {
return view('admin.group.edit', ['group' => $oGroup, 'power_categorys' => $aCategoryPowers, 'powers' => $powers]);
}
// post
$sGroupName = $request->input('groupname', $oGroup->groupname);
$aGroupPower = $request->input('powers', array());
$aAllPowers = array_column($oAllPowers->toArray(), 'id');
try {
$j = count($aGroupPower);
for ($i = 0; $i < $j; $i++) {
$aGroupPower[$i] = intval($aGroupPower[$i]);
if (!in_array($aGroupPower[$i], $aAllPowers)) {
// 權限不存在
unset($aGroupPower[$i]);
}
}
} catch (Exception $e) {
App::abort(404);
}
// 超級管理員的權限永遠是所有,無法更改的
// 隻有名字可以修改
if ($oGroup->id != 1) {
Group::update_powers($id, $aGroupPower);
}
$oGroup->save();
session()->flash('msg_success', '修改成功');
return back();
}