【发布时间】:2026-02-14 15:30:01
【问题描述】:
我正在处理画廊和图片。我正在使用 Flask、AngularJS、MongoDB(和 mongoengine)。我通过 API 显示了我的所有对象。
我有两种对象: - 画廊对象由 id:int、title:string、owner:string、date:string、content:array[] 等定义... - 图片对象由 id:int、title:string、owner:string、date:string 等定义...
在一个数组的画廊内容中,我得到了画廊的所有 id。 [MongoDB示例][1]
当用户点击相关图库时,我尝试在 HTML 页面模板中列出所有图片。 为此,我在控制器中使用 $scope 变量,在 HTML 端使用 ng-repeat。
控制器:
$scope.gallery = Galleries.get({id: $routeParams.id}, function (gallery) {
for (var i = 0; i < gallery.content.length; i++){
gallery.picture = Picture.get({id: $scope.gallery.content[i].split('-')[1]});
}
});
HTML:
<tr ng-repeat="pict in gallery">
<td>{{pict.fileID}}</td>
<td>{{pict.legend}}</td>
</tr>
很遗憾,只显示了内容中的最后一张图片。范围内的全局变量不会在每个内容索引处提供。
如何将所有图片对象放在一个范围变量中,以便在 HTML 视图中使用 ng-repeat?
提前致谢, 祝你有美好的一天。
【问题讨论】:
-
你能展示你的函数
Galleries.get和Picture.get的代码吗? -
嗨,这可能有点棘手,但我可以使用数组吗?
标签: javascript angularjs angularjs-scope angularjs-ng-repeat