Fix: 防止生产环境未运行 composer install 导致 Location facade 找不到引发 500 错误
This commit is contained in:
@@ -67,16 +67,24 @@ class UserController extends Controller
|
|||||||
$data['last_ip'] = $targetUser->last_ip;
|
$data['last_ip'] = $targetUser->last_ip;
|
||||||
$data['login_ip'] = $targetUser->login_ip; // 假设表中存在 login_ip 记录本次IP,若无则使用 last_ip 退化
|
$data['login_ip'] = $targetUser->login_ip; // 假设表中存在 login_ip 记录本次IP,若无则使用 last_ip 退化
|
||||||
|
|
||||||
// 解析归属地
|
// 解析归属地 (防崩溃处理:检查服务提供者是否已安装)
|
||||||
$ipToLookup = $targetUser->login_ip ?: $targetUser->last_ip;
|
$ipToLookup = $targetUser->login_ip ?: $targetUser->last_ip;
|
||||||
if ($ipToLookup) {
|
if ($ipToLookup) {
|
||||||
$position = Location::get($ipToLookup);
|
if (class_exists('\Stevebauman\Location\Facades\Location')) {
|
||||||
if ($position) {
|
try {
|
||||||
$data['location'] = ($position->countryName === 'China' || $position->countryName === 'Local') ?
|
$position = Location::get($ipToLookup);
|
||||||
($position->regionName ?? '').' '.($position->cityName ?? '') :
|
if ($position) {
|
||||||
$position->countryName;
|
$data['location'] = ($position->countryName === 'China' || $position->countryName === 'Local') ?
|
||||||
|
($position->regionName ?? '') . ' ' . ($position->cityName ?? '') :
|
||||||
|
$position->countryName;
|
||||||
|
} else {
|
||||||
|
$data['location'] = '未知区域';
|
||||||
|
}
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
$data['location'] = '解析失败';
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
$data['location'] = '未知区域';
|
$data['location'] = 'IP解析库未安装';
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
$data['location'] = '暂无记录';
|
$data['location'] = '暂无记录';
|
||||||
|
|||||||
Reference in New Issue
Block a user