使用 Express Route 使用 Mongoose 的数据填充 Backbone Marionette 视图

2024-01-29

我试图使用节点/快速路由来获取数据/api,并将数据存储在 mongo/mongoose 中,并将其显示在 Backbone Marionette 中...

我使用的路线是这样的:

enter code here`app.get('/cats', function(req, res){
Cat.find({}, function (err, docs) {
res.send(docs);
  });
});

2)当我访问 localhost:3000/cats 时,我得到的 json 工作为:

[
{
"__v": 0,
"_id": "51318ce9a7ff43f808000003",
"catname": "Jonas"
},
{
"catname": "Justin",
"_id": "51416268a8225e7413000001",
"__v": 0
},
{
"catname": "Bobby",
"_id": "51416268a8225e7413000001",
"__v": 0
}
]

3)现在我如何让集合/模型/itemview/等使用我的数据库中的json数据?

我通常会走到这一步:

MyCat = Backbone.Model.extend({});

MyCats = Backbone.Collection.extend({
model: MyCat,
url: '/cats'
});

CatView = Backbone.Marionette.ItemView.extend({
template: "#cats-template",
tagName: 'li',
className: 'cat'
});

AngryCatsView = Backbone.Marionette.CompositeView.extend({
tagName: "ul",
id: "cats",
template: "#cats-template",
itemView: CatView,

appendHtml: function(collectionView, itemView){
collectionView.$("ul").append(itemView.el);
}
});

但我不确定要使用哪种类型的初始化程序。 我见过硬编码 json 的示例,但没有看到来自数据库的示例。


您发布的代码中没有任何地方实际从服务器获取您的集合。

尝试这个:

var catCollection = new MyCats();
catCollection.fetch();

var angryCatsView = new AngryCatsView({collection: catCollection});
angryCatsView.render();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Express Route 使用 Mongoose 的数据填充 Backbone Marionette 视图 的相关文章

随机推荐