本文整理汇总了PHP中app\models\Role::addOrModify方法的典型用法代码示例。如果您正苦于以下问题:PHP Role::addOrModify方法的具体用法?PHP Role::addOrModify怎么用?PHP Role::addOrModify使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类app\models\Role
的用法示例。
在下文中一共展示了Role::addOrModify方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: responseEdit
public function responseEdit($id)
{
$response = parent::responseEdit($id);
$validation = $response['validation'];
unset($response['validation']);
$role = Role::find($id);
$menus = Menu::ofParent(null)->sort()->get();
$response['role'] = $role;
$response['menus'] = $menus;
if ($response['initial'] == true) {
// Pas form baru kebuka
$response['errors'] = [];
foreach ($this->validations as $f => $v) {
$fields[$f] = $role->{$f};
if (is_a($fields[$f], 'Illuminate\\Support\\Collection')) {
$fields[$f] = $fields[$f]->toArray();
}
}
foreach ($fields['permissions'] as $f) {
$sx = explode(',', $f['privileges']);
foreach ($sx as $ff) {
$fields['permissions[' . $f['menu_id'] . '][' . strtolower($ff) . ']'] = 'on';
}
}
$response['fields'] = $fields;
// dd($fields);
$response['output'] = view('backend.pages.security.roles.form-ajax', $response)->render();
} elseif ($validation->passes()) {
// Pas validasi berhasil
$data = $this->normaliseData($response['data']);
// dd($data);
Role::addOrModify($data, $id);
$response['status'] = true;
} else {
// Pas validasi gagal
$response['fields'] = $response['data'];
$response['fields']['label'] = $role->label;
$response['output'] = view('backend.pages.security.roles.form-ajax', $response)->render();
}
return $response;
}