【发布时间】:2015-11-24 11:29:00
【问题描述】:
我已经更新了用于显示数据的视图 - 项目,使用 AngularJS,现在我有一个问题,当我更改项目的 URL 地址 ID 时,方法 show() 没有显示 404 错误 - 项目不属于已登录用户,而不是我收到此错误。
试图获取非对象的属性(查看:C:\www\htdocs\laravel\resources\views\backend\partials\project\single-project.blade.php)
在我更新视图以使用 AngularJS 之前,一切正常。
我的角度控制器:
freelo.controller('mainCtrl', ['$scope', '$http', function($scope, $http) {
$scope.projects = [];
$http.get('api/userProjects')
.then(function(response) {
$scope.projects = response.data;
});
}]);
我的app.js:
var freelo = angular.module('freelo', []);
检索用户项目的方法:
public function getProjectsInJson(){
$project = Project::where('user_id', '=', $this->getCurrentUserId())->get();
return response()->json($project);
}
还有我在ProjectsController 中的show() 方法:
public function show($id){
$project = Project::where('id','=', $id)
->where('user_id', '=', $this->getCurrentUserId())
->first();
$user = DB::table('projects')
->join('users', 'projects.user_id', '=', 'users.id')
->join('profiles', 'users.id', '=', 'profiles.user_id')
->select('users.id','profiles.username')
->where('projects.id','=', $id)
->get();
if(!$project && !$user){
abort(404);
}else{
return view('backend.partials.project.single-project')->with('project', $project)->with('user', $user);
}
}
我在哪里犯了错误或必须改变什么?
【问题讨论】:
标签: angularjs laravel laravel-5.1