Подтвердить что ты не робот

Что такое @id как передано в $resource?

$resource("/entries/:id", {id: "@id"}, {update: {method: "PUT"}})

Что такое @id?

На странице ресурса $resource

4b9b3361

Ответ 1

Если я правильно понимаю это, и я не могу, параметр {id: @id} является иллюстрацией другого способа подачи вашей переменной url части данных.

Учитывая этот метод:

var myResource = $resource("/posts/:theName", 
                           {theName: '@petName'},
                           {enter : {
                                      method: "POST", 
                                      isArray: false
                                     }
                            });

Если у меня есть атрибут "petName" в данных, которые я отправляю, значение этого атрибута будет помещено в переменную :theName в мой url. Представьте, что данные post {"petType": "cat", "petName": "Spot"}, url будет читать "/posts/Spot". На мой взгляд, @ означает "атрибут" объекта для публикации.

Уберите @ из этого значения, а переменная url будет напрямую ссылаться на значение в этом параметре ресурса:

{theName: 'petName'} //no "@"
// url output ---->   '/posts/petName'

.

Вот цепочка ссылок:

//url var--> //$resource param {..}  --->//Object to be posted
:theName---> {theName ----> @petName ---> {petName---> "Spot"

Чтобы получить "Spot" в URL-адрес, потребовалось всего 5 шагов!

.

Пример экземпляра ресурса с использованием приведенного выше примера:

var postData = new myResource();
    postData.petType = "cat";
    postData.petName = "Spot";
    postData.$enter({}, function(data){
        $scope.data = data;
    })
    // url to post to will be '/posts/Spot', postData object will be 
    //  {"petType":"cat", "petName:"Spot"}

С другой стороны, документы могут быть очень запутанными. Вы когда-нибудь занимались сложным курсом, и профессор был блестящим человеком, который едва говорил на вашем языке? Да.