我有一个在前端使用 AngularJS 的 Rails 应用程序。我还有一个格式为“/api/:user_id/submissions/:id”的路由来访问用户的特定提交。在前端,我想显示当前登录的 Devise 用户的每个帖子,并且只显示他们的帖子。我已经创建了一个 Angular 工厂:
var brainDB = angular.module('brainDB',['ngResource']).factory('userSubmission', function($resource){
var service = $resource('/api/:user_id/submissions/:id', {user_id: '@user'}, {id: '@id'} );
return service;
并将其范围限定为我的控制器:
brainDB.controller('SubmissionsCtrl',['$scope', 'Submission', 'userSubmission',
function($scope, Submission, userSubmission){
$scope.submissions = Submission.query();
$scope.userSubmissions = userSubmission.query();
}]);
唯一的问题是顶部的工厂不起作用。我可以在我的数据库中输出每一个提交,但我不知道如何告诉 Angular current_user 的 user_id 是什么。我有一个 submits.rb 控制器,它的操作成功地从我的路由“/api/:user_id/submissions/”中提取特定用户的所有帖子,但就像我说的那样,我不知道如何告诉 Angular 是什么current_user.id 是因为 current_user 只能从 Rails 访问。
我已经尝试解决这个问题一周了,并没有通过谷歌搜索找到太多帮助。任何意见是极大的赞赏。