我试图让我的REST api暴露我的mongodb数据库以连接到ng-admin。我的成功有限,一旦我将它们从对象转换为字符串,我就能在界面中看到_id。
特别是我在使用embedded_list字段类型显示子标签时遇到问题。我正在关注文档,我只是得到了错误
TypeError:t.map不是函数
在Function.i.value(http://172.28.128.3/bower_components/ng-admin/build/ng-admin.min.js:1:5980) [截断...]
at ae(http://172.28.128.3/bower_components/ng-admin/build/ng-admin.min.js:23:3751)
<ma-embedded-list-column field="::field" value="::value" datastore="::datastore" class="ng-scope ng-isolate-scope">
我的ng_admin配置看起来像
var myApp = angular.module('myApp', ['ng-admin']);
myApp.config(['NgAdminConfigurationProvider', function (nga) {
// create an admin application
var admin = nga.application('Keyword admin')
.baseApiUrl('http://172.28.128.3/dictionary/'); // main API endpoint
var keyword = nga.entity('keyword');
// set the fields of the user entity list view
keyword.listView().fields([
nga.field('_id'),
nga.field('labels', 'embedded_list') // Define a 1-N relationship with the (embedded) comment entity
.targetFields([ // which comment fields to display in the datagrid / form
//nga.field('sport'),
nga.field('project'),
nga.field('label')
])
]);
//keyword.identifier(nga.field('_id.$id'));
keyword.identifier(nga.field('_id'));
admin.addEntity(keyword)
nga.configure(admin);
}]);
和我的api的输出看起来像(url / dictionary / keyword / 56dd780e1163cf0d008b4568)
{
"_id": {
"$id": "56dd780e1163cf0d008b4568"
},
"labels": [
{
"label": "the pyramid front left",
"project": "core"
}
],
"_links": {
"self": {
"href": "http://172.28.128.3/dictionary/keyword/56dd780e1163cf0d008b4568"
}
}
}
答案 0 :(得分:0)
这里的问题是$ labels不是一个数组,我在mongodb聚合函数中完成$ unwind并且在返回数据之前没有撤消它。