当输入url,domain.com/floorplans时,我希望FloorplanController.php将所有平面图返回到角度控制器并返回视图。
这是FloorplanController @ index:
public function index()
{
$floorplans = Floorplan::all();
return view('floorplans.index', compact('floorplans'));
}
这是我的Angular控制器:
angular
.module('myApp', [])
.controller('FloorplanController', function($scope, $http) {
$http.get('/floorplan').success(function(floorplans) {
$scope.floorplans = floorplans;
});
});
以上不起作用,因为$scope.floorplans = floorplans;
始终未定义。
如果我在routes.php文件中创建两个单独的路由,我可以让它工作,但这看起来非常草率。
Route::get('/', function()
{
return view('floorplans.index');
});
Route::get('test', function()
{
return Floorplan::all();
});
使用对象返回视图的正确语法是什么,以便Angular控制器拾取对象?
答案 0 :(得分:0)
您可以尝试使用此代码,它现在适用于我:
public function index()
{
$data['floorplans'] = Floorplan::all();
return view('floorplans.index')-> with($data);
}
然后在你看来,使用:$ floorplans(php)或{{$ floorplans}}(html)
从列名获取值:$ floorplans ['column-name']
答案 1 :(得分:0)
我遇到了同样的问题,但我在其中一个项目中解决了这个问题。这个回复可能为时已晚,但只想分享我的经验。 您可以按照以下说明进行操作。
这是你的路线:
Route::get('/', floorplanController@index);
Route::get('/floorplan', floorplanController@floorplan);
这是你的控制器:
public function index(){
return view('index');
}
public function floorplan(){
return response()->json(Floorplan:get());
}
您可以保持角度控制器的原样。但最好使用单独的服务页面和在单独页面中定义的主应用程序模块,这将在您的应用程序增长时发挥作用。