尝试通过用户名将某个用户转换为变量

时间:2016-02-09 12:28:07

标签: angularjs angular-resource

我正在尝试将用户个人资料页面添加到网页,因此我需要通过用户名获取用户的详细信息。我正在使用$ stateparams来获取用户名。

我正在使用这个抛出错误的函数

      $scope.ourUser = Users.get({
            username: $stateParams.username
        });

错误

[$resource:badcfg] Error in resource configuration for action `get`. Expected response to contain an object but got an array

控制器代码似乎没问题

angular.module('savings').controller('SavingsController', ['$scope',  '$http', '$timeout', '$stateParams', '$location', '$window','$state' , 'Authentication', 'Savings', 'FileUploader', 'Posts', 'Users',
function($scope,  $http, $timeout, $stateParams,  $location, $window, $state, Authentication, Savings, FileUploader, Posts, Users) {

我编辑了问题以简化它,因为帖子调用不是问题所在。

我已将此添加到服务中

userByUsername: {
    method: 'GET',
    url: '/api/users/:userName',
    isArray: true
  }

1 个答案:

答案 0 :(得分:1)

当您声明资源时,您有一个属性isArray可用,如下所示:

'search':   {method:'GET', isArray:true,....}

当您的服务返回列表时将其设置为true,否则它将失败并显示该消息。

这意味着变量ourUser将是[预期]一个用户的数组。