Skip to content

当存储桶被删除后, 在管理处就会500错误 #38

Description

@alexbourne625

具体出现在以下请求上的500错误:
/role/query?page=1&size=10&name=

当我们选择一个存储桶时, 而这个存储桶被删除不存在. 就会错误 ,

在 app/controller/Role.php 第50行左右

foreach ($result as $key => $value) {
$storage = StorageModel::find($value['storage_id']);
$value['storage_name'] = $value['storage_id'] == 0 ? '存储桶不存在' : $storage['name'];
$value['user_num'] = UserModel::where('role_id', $value['id'])->count();
}

改成增加对 null 的判断:

foreach ($result as $key => $value) {
$storage = StorageModel::find($value['storage_id']);
if ($value['storage_id'] == 0 || $storage === null) {
$value['storage_name'] = '存储桶不存在';
} else {
$value['storage_name'] = $storage['name'];
}
$value['user_num'] = UserModel::where('role_id', $value['id'])->count();
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions