从集合到 Blade View 的 Echo 数据
Echo Data From Collection to Blade View
我只是(出于我自己的测试目的)尝试从集合中获取数据并将其传递给视图。我正在使用 Laravel.
我正在从 GitHub API 获取数据,将其转换并放入集合中。它从这里传递到视图,但我无法输出每个单独的字段。
这是一些代码:
$httpClient = new Client();
$response = $httpClient->get('https://api.github.com/users/<randomuser>');
$json = json_decode($response->getBody(), true);
$collection = collect($json);
return view('github')->with('github', $collection);
我的 Blade 文件是
@foreach ($github as $git)
{{ $git }}
@endforeach
现在我认为输出它会像 {{ $git->email }}
一样简单,但我认为数组键没有被发送 (?)
任何人都可以指出我出错的正确方向吗?
提前致谢。
-克里斯
试试这个,
在你的控制器 use View
和函数中
$data['github_data'] = $collection;
return view('github', $data);
并在 blade
{{ dd($github_data) }}
因为它是一个键 => val 数组,所以你应该这样循环它...
@foreach ($github as $key => $val)
Key: {{ $key }} ~~ Value: {{ $val}} <br />
@endforeach
但是,如果您只想获取电子邮件,请使用 Collection
的获取方法。
$email = $github->get('email')
在 blade
中简单使用 get() 方法
$github->get('login')
当您使用 Laravel 时,尝试在尝试操作之前检查您的结构是否正确。
在这种情况下,检查:
- 您在调用 $httpClient->get 后在 $response 中得到了您期望的结果(如果您使用的是 Guzzle)。
- 您有一个 $json 结构符合您的期望。
- 您在调用 collect().
后拥有一个 Collection 实例
你可以用dd() or var_dump()看看你有什么数据结构。可能发生的情况是您没有您认为的结构。
我只是(出于我自己的测试目的)尝试从集合中获取数据并将其传递给视图。我正在使用 Laravel.
我正在从 GitHub API 获取数据,将其转换并放入集合中。它从这里传递到视图,但我无法输出每个单独的字段。
这是一些代码:
$httpClient = new Client();
$response = $httpClient->get('https://api.github.com/users/<randomuser>');
$json = json_decode($response->getBody(), true);
$collection = collect($json);
return view('github')->with('github', $collection);
我的 Blade 文件是
@foreach ($github as $git)
{{ $git }}
@endforeach
现在我认为输出它会像 {{ $git->email }}
一样简单,但我认为数组键没有被发送 (?)
任何人都可以指出我出错的正确方向吗?
提前致谢。
-克里斯
试试这个,
在你的控制器 use View
和函数中
$data['github_data'] = $collection;
return view('github', $data);
并在 blade
{{ dd($github_data) }}
因为它是一个键 => val 数组,所以你应该这样循环它...
@foreach ($github as $key => $val)
Key: {{ $key }} ~~ Value: {{ $val}} <br />
@endforeach
但是,如果您只想获取电子邮件,请使用 Collection
的获取方法。
$email = $github->get('email')
在 blade
中简单使用 get() 方法$github->get('login')
当您使用 Laravel 时,尝试在尝试操作之前检查您的结构是否正确。
在这种情况下,检查:
- 您在调用 $httpClient->get 后在 $response 中得到了您期望的结果(如果您使用的是 Guzzle)。
- 您有一个 $json 结构符合您的期望。
- 您在调用 collect(). 后拥有一个 Collection 实例
你可以用dd() or var_dump()看看你有什么数据结构。可能发生的情况是您没有您认为的结构。