SpringDataRestAdapter加载子资源

时间:2016-03-17 21:32:55

标签: angularjs spring hateoas

enter image description here

您好,我正在使用SpringDataRestAdapter与我的spring数据rest api进行交互。从屏幕截图中你可以看到我刚刚加载了所有问题而我正在尝试加载他们的答案(一对多)关系。在调试窗口中,_embeddedItems数组是一个问题数组,每个问题答案都有_links。我试图通过将'answers'作为参数传递给processWithPromise调用来提示SpringDataRestAdapter自动加载答案,但无济于事。

网址看起来像 http://localhost:8080/api/questions http://localhost:8080/api/question/1/answers

Question.loadAnswers(问题)调用已被注释掉...它的工作原理是它加载了问题的答案,但我觉得我错误地使用了框架。

这是方法

Question.loadAnswers = function (question) {

            question.answers = question.answers? question.answers : [];

            angular.forEach(question._links.answers, function (answerLink) {
                var deferred = $http.get(answerLink);
                return SpringDataRestAdapter.processWithPromise(deferred).then(function (data) {
                    question.answers = data._embeddedItems;
                });
            });
        };

谢谢, 标记

1 个答案:

答案 0 :(得分:0)

请在此处https://github.com/guylabs/angular-spring-data-rest/issues/22查看相应Github问题的答案。

谢谢和问候,