在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']