从一个控制器(Convos)启动一个消息控制器。我传入一个id,并尝试使用该id来过滤哪些Messages绑定到新视图。由于某种原因,过滤不起作用,并且正在显示所有消息记录。这是我的Messages控制器中的代码。
消息模型的数据结构
message_id: "integer",
convo_id: "integer",
created: "text",
author: "text",
body: "text",
Convos.js
var messages = Alloy.createController('messages', {
convoId: e.rowData.convoId,
});
messages.getView().open();
Messages.js
var args = arguments[0] || {}
var messages = Alloy.Collections.messages;
messages.reset();
messages.fetch();
messages.where({convo_id: args.convoId});
我做了什么明显错误的事吗? Titanium关于Alloy的文档很少,而Backbone文档似乎假设您已经知道如何使用它......
答案 0 :(得分:2)
where函数返回模型数组,如果不更新实际集合
http://backbonejs.org/#Collection-where
var filteredArray = messages.where({convo_id: args.convoId});