在 Laravel 6 中使用数组传递数据?



在CodeIgniter 3.x中,我们可以使用以下代码传递带有数组的数据:

$data=array(
'apartment' => $this->apartmentmodel->get_all(),
'title' => "List Apartement"
);
$this->load->view('apartment/index',$data);

但是,在我的 Laravel 6 项目上实现时,此代码不起作用

$data=array(
'apartment' => DB::table('apartment')->get();,
'title' => "List Apartement"
);
return view(apartment.index,$data);

问题是什么以及如何解决?有人可以帮助我吗?

只需从第 2 行中删除;即可,即可正常工作

$data=array(
'apartment' => DB::table('apartment')->get(),
'title' => "List Apartement"
);
return view('apartment.index', $data);

或者您也可以使用紧凑型,请参阅下面的文档 https://laravel.com/docs/6.x/views

在Laravel中,我们可以使用eloquent从数据库中获取数据。

$data=[
'apartment' => Apartment::get();,
'title' => "List Apartment"
];
return view('apartment.index', ['data' => $data]);

它将对您有所帮助。

谢谢

潘查尔

return view('apartment.index',compact('data'));

您可以使用compact()方法,并且您有一个错误(如果这是项目代码(。

尝试:

$apartment = DB::table('apartment')->get();
$title = 'List Apartement';
return view('apartment.index', compact('apartment', 'title'));

$data=[
'apartment' => DB::table('apartment')->get();,
'title' => "List Apartement"
];
return view('apartment.index', compact('data'));

或:

$data=[
'apartment' => DB::table('apartment')->get();,
'title' => "List Apartement"
];
return view('apartment.index', ['data' => $data]);

更新:

在模板文件中,您可以通过调用$data来使用它,因为在 return 语句中,您传递将与当前模板共享的变量名。因此,要从数组中获取一些数据$data您只需要执行以下操作:

@foreach($data['apartment'] as $apartment)
{{ $apartment }}
@endforeach

为了获得你的标题,也使用$data['title']

相关内容

  • 没有找到相关文章

最新更新