无法读取null数据绑定问题的属性'__transform'

时间:2013-10-06 18:46:00

标签: binding titanium views models titanium-alloy

我收到错误无法读取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

1 个答案:

答案 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>