Jak przekazywać parametry podczas korzystania z usługi zasobów?

Bardzo trudne pytanie:

Próbuję zbudować obiekt zasobów przy użyciu metody fabrycznej:

.factory('Magazines', [function ($resource) {

    var url = document.URL;
    var urlArray = url.split("/");
    var organId = urlArray[urlArray.length-1];

    return $resource('http://localhost/ci/api/magazines/:id', {
        loginID : organEntity,
        password : organCommpassword,
        id : organId
    });
  }])

Ta metoda jest łatwa, ponieważ wszystkie parametry są predefiniowane, organEntity i organCommpassword są zdefiniowane wewnątrz znacznika.

Teraz dla innego obiektu zasobów muszę przekazać parametr, gdy zostanie wywołana fabryka.

Wyobrażam sobie, że kod wywołujący tego obiektu zasobu powinien wyglądać tak:

.controller('ResrouceCtrl', function($scope, Magazines) {
      $scope.magazines = Magazines.query();
});

Wiem, że metoda query () może dodawać parametry:Magazines.query(params, successcb, errorcb);

Zastanawiam się, czy po prostu przekazuję parametry, czy mogę uzyskać parametr w fabryce? Jak określić takie przekazane parametry w metodzie fabrycznej?

Na przykład, przypuśćmy teraz, że nie mogę już pobrać organizatora z adresu URL, muszę go przekazać z mojego kontrolera, jak odbierać organId w ramach metody fabrycznej?

Oto mój zasób js:

.factory('MagComments', function ($resource) {


    return $resource('http://localhost/dooleystand/ci/api/magCommenct/:id', {
      loginID : organEntity,
      password : organCommpassword,
      id : '@magId' //pass in param using @ syntax
    });
  })

Oto mój kontroler:

$scope.magComments = MagComments.query({magId : 1});

Próbowałem przekazać parametr, ale powoduje błąd

questionAnswers(2)

yourAnswerToTheQuestion