我刚刚开始在我的not应用程序中使用AngularJS --这很简单,但是现在我不能继续了。
我在申请一家轮胎公司。
这就是我的模式关系:
品牌有0种或多种品牌类型(型号)轮胎涉及一种品牌和品牌类型
我想缓存品牌和发布的品牌类型。
在我缓存这些数组在控制器中,我想得到轮胎,并使他们链接到BrandType和品牌。
这些是我的JSON文件。
品牌
[
{
"id":1,
"name":"Continental",
"created_at":"-0001-11-30 00:00:00",
"updated_at":"2015-07-15 20:45:35"
},
{
"id":2,
"name":"Michelin",
"created_at":"2015-07-15 21:03:56",
"updated_at":"2015-07-17 12:14:05"
}
]品牌类型与品牌
{
"id":1,
"name":"ContiSportContact3",
"brand_id":1,
"created_at":"-0001-11-30 00:00:00",
"updated_at":"-0001-11-30 00:00:00"
},
{
"id":2,
"name":"ContiSportContact4",
"brand_id":1,
"created_at":"-0001-11-30 00:00:00",
"updated_at":"-0001-11-30 00:00:00"
},
{
"id":3,
"name":"Pilot Alpin",
"brand_id":2,
"created_at":"-0001-11-30 00:00:00",
"updated_at":"-0001-11-30 00:00:00"
}
]轮胎(必须与品牌和品牌挂钩,因为我需要在表格中显示这一点)。
[
{
"id":3,
"tire_number":1011,
"brand_id":2,
"brand_type_id":3,
"category_id":1,
"created_at":"-0001-11-30 00:00:00",
"updated_at":"-0001-11-30 00:00:00",
"number":0,
"width":225,
"height":55,
"diameter":16,
"other":0,
"load_factor":"95",
"speed":"h",
"mms":"6,5-7",
"season_id":3
}
]我已经有这个,它正在工作,但我需要显示品牌名称和品牌类型名称,而不是ID。
<tr ng-repeat="tire in tires">
<td><%tire.tire_number%></td>
<td><%tire.brand_id%></td>
<td><%tire.brand_type_id%></td>
<td><%tire.season_id%></td>
<td><%tire.width%></td>
<td><%tire.height%></td>
<td><%tire.diameter%><%tire.other%></td>
<td><%tire.load_factor%></td>
<td><%tire.speed%></td>
<td><%tire.mms%></td>
</tr>这应该是容易的,但我已经搜索了很多,但我找不到一个简单的解决方案。
发布于 2015-08-02 16:59:16
使用ID作为键将您的Brands数组转换为hashmap相对容易,然后您可以使用该键根据每个轮胎的brand_id进行非常简单的名称查找
$scope.brandNames = {};
brandData.forEach(function(item) {
$scope.brandNames[item.id] = item.name
});将产生:
{
1:"Continental",
2:"Michelin"
}然后在视图中可以这样做:
<td>{{brandNames[tire.brand_id]}}</td>使用服务将hashmap传递给控制器的演示
https://stackoverflow.com/questions/31663793
复制相似问题