Как передать параметры при использовании ресурса сервиса?

Очень новый вопрос:

Я пытаюсь построить объект ресурса, используя метод фабрики:

.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
    });
  }])

Этот метод прост, потому что все параметры предопределены, organEntity и organCommpassword определены внутри тега.

Теперь для другого объекта ресурса мне нужно передать параметр при вызове фабрики.

Я полагаю, код вызова этого объекта ресурса должен выглядеть следующим образом:

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

Я знаю, что метод query () может добавить параметры:Magazines.query(params, successcb, errorcb);

Интересно, если я просто передам параметры, могу ли я получить параметр на заводе? Как указать такой передаваемый в параметрах в заводском методе?

Например, теперь предположим, что я больше не могу получить organId из URL, мне нужно передать его из моего контроллера, как получить organId в фабричном методе?

Вот мой ресурс 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
    });
  })

Вот мой контроллер:

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

Я попытался передать параметр, но это вызывает ошибку