Titanium从其他控制器访问模型

时间:2013-06-21 09:07:30

标签: titanium titanium-mobile

我了解到这是如何从其他控制器访问模型,     var book = Alloy.Models.instance('book');

这是如何访问模型的属性,     var name = book.get('name');

但是在控制台中,名称记录[INFO]:{},这意味着它没有获取其属性值,并且当然模型已经保存了数据。谢谢你的帮助!

2 个答案:

答案 0 :(得分:1)

您可能必须先获取该集合:

var books = Alloy.Collections.book;
books.fetch();

这将加载集合中的所有模型,以便您可以使用它们。

答案 1 :(得分:1)

虽然上面的内容有效,但这里有一些附加点。

  • 在大多数情况下,调用是异步的,因此您应该在回调中获取模型,而这在上面的代码中没有显示。

  • 我不知道每次你想要一个模型来取出集合也是正确的方法吗?如果集合已经存在,您只需使用id从集合中获取模型。

  • 根据确切的用例,您可能只想将模型作为参数从一个控制器传递到下一个控制器