我收到错误无法读取null数据绑定问题的属性'__transform'。
资源部分中相应错误的代码行:
text: "undefined" != typeof $model.__transform["topic"] ? $model.__transform["topic"] : $model.get("topic")
我认为模型没有被正确引用。这是我的型号代码。它位于models目录中的chatThreadSQL.js文件中:
exports.definition = {
config: {
"columns": {
"uuid":"TEXT UNIQUE PRIMARY KEY",
"topic": "TEXT",
"created":"TEXT",
//"patient": "",
},
adapter: {
"type": "sql",
"collection_name": "chatThreadSQL_col",
// idAttribute tells Alloy/Backbone to use this column in
// my table as its unique identifier field. Without
// specifying this, Alloy's default behavior is to create
// and "alloy_id" field which will uniquely identify your
// rows in the table with a text GUID.
"idAttribute": "uuid"
}
},
extendModel: function(Model) {
_.extend(Model.prototype, {
// extended functions go here
}); // end extend
return Model;
},
extendCollection: function(Collection) {
_.extend(Collection.prototype, {
// extended functions go here
}); // end extend
return Collection;
}
};
我已经验证使用adb shell将数据插入到sqlite3中。
这是我的视图定义,用于视图文件chatHome.xml
<TableView dataCollection="chatThreadSQL" id="table2">
<TableViewSection>
<TableViewRow id="row" title="{topic}" onClick="openChats" model="{uuid}" backgroundSelectedColor="#000080">
<Label id="title" text="{topic}"/>
<Label id="date" text="{date}"/>
</TableViewRow>
</TableViewSection>
</TableView>
在controllers / chatHome.js中,我的文件顶部有以下行:
var chatThreads = Alloy.Collections.chatThreadSQL;
任何指针都将非常感谢!
其他信息:
Application type: mobile
Titanium SDK: 3.1.3
Platform & version: Android 4.
Host Operating System: Ubuntu 13.04
答案 0 :(得分:0)
您将收藏集名称设置为chatThreadSQL_col
,因此您必须在代码中以这种方式引用它。
尝试:
<TableView dataCollection="chatThreadSQL_col" id="table2">
<TableViewSection>
<TableViewRow id="row" title="{topic}" onClick="openChats" model="{uuid}" backgroundSelectedColor="#000080">
<Label id="title" text="{topic}"/>
<Label id="date" text="{date}"/>
</TableViewRow>
</TableViewSection>
</TableView>