无法将元素从数组传递到视图
Can't pass element from array to view
尝试-不成功-作为分隔值从该数组传递到视图中:
#items: array:1 [▼
0 => {#548 ▼
+"location": "Guadalajara"
+"location_id": 34
}
]
}
这个数组在 leftjoin 查询之后出现
$default_loc = DB::table('users')
->leftJoin('locations', 'users.location_id','=','locations.id')
->where('users.id',auth()->user()->id)
->select('location', 'location_id')
->get();
如果我尝试通过 compact('default_loc')
将此数组传递给视图,我只能显示整个数组,如上所示 {{ $default_loc }}
,但不能将它分成 $default_loc->location
和 $default_loc->id
.
谢谢大家,
您的预期结果总是 1 个结果吗?如果是,您可以将 ->get() 更改为 ->first(),那么您将只有一个对象。
如果没有,则需要在视图中使用索引进行迭代或访问:
@foreach($default_loc as $loc)
{{ $loc->location_id }} - {{ $loc->location }}
@endforeach
或
{{ $default_loc[INDEX]->location_id }} {{ $default_loc[INDEX]->location }}
因为$default_loc
是一个数组,你应该把它当作一个数组,所以要访问它你需要使用[]
运算符:
{{ $default_loc[0]->location_id }}
但是,如果您确定只会返回 1 条记录,则可以使用 first()
方法而不是 get()
,这将直接为您提供对象:
$default_loc = DB::table('users')
->leftJoin('locations', 'users.location_id','=','locations.id')
->where('users.id',auth()->user()->id)
->select('location', 'location_id')
->first();
...
{{ $default_loc->location_id }}
尝试-不成功-作为分隔值从该数组传递到视图中:
#items: array:1 [▼
0 => {#548 ▼
+"location": "Guadalajara"
+"location_id": 34
}
]
}
这个数组在 leftjoin 查询之后出现
$default_loc = DB::table('users')
->leftJoin('locations', 'users.location_id','=','locations.id')
->where('users.id',auth()->user()->id)
->select('location', 'location_id')
->get();
如果我尝试通过 compact('default_loc')
将此数组传递给视图,我只能显示整个数组,如上所示 {{ $default_loc }}
,但不能将它分成 $default_loc->location
和 $default_loc->id
.
谢谢大家,
您的预期结果总是 1 个结果吗?如果是,您可以将 ->get() 更改为 ->first(),那么您将只有一个对象。
如果没有,则需要在视图中使用索引进行迭代或访问:
@foreach($default_loc as $loc)
{{ $loc->location_id }} - {{ $loc->location }}
@endforeach
或
{{ $default_loc[INDEX]->location_id }} {{ $default_loc[INDEX]->location }}
因为$default_loc
是一个数组,你应该把它当作一个数组,所以要访问它你需要使用[]
运算符:
{{ $default_loc[0]->location_id }}
但是,如果您确定只会返回 1 条记录,则可以使用 first()
方法而不是 get()
,这将直接为您提供对象:
$default_loc = DB::table('users')
->leftJoin('locations', 'users.location_id','=','locations.id')
->where('users.id',auth()->user()->id)
->select('location', 'location_id')
->first();
...
{{ $default_loc->location_id }}