我在Ember中退出了适配器的世界,我想创建一个自定义的数据,将一些数据保存到兼容浏览器的webSQL数据库中。
看起来可能非常简单,但我在这个过程的开始就陷入困境。
我在一个单独的文件中有这个:
DS.WebSQLAdapter = DS.Adapter.extend({
dbName: 'testDb',
dbVersion: '1.0',
dbDisplayName: 'Test Db',
dbSize: (2 * 1024 * 1024),
init: function() {
this.db = cont.openDatabase( this.dbName, this.dbVersion, this.dbDisplayName, this.dbSize );
},
createRecord: function( store, type, query, recordArray ) {
console.log(data);
}
})
在我的app.js文件中:
window.App = Ember.Application.create({});
App.ApplicationAdapter = DS.WebSQLAdapter;
当我在我的控制器中执行此操作时:
App.ApplicationController = Ember.ArrayController.extend({
actions: {
myAction: function() {
this.store.createRecord('someDB', {key: 'test', title: 'myTitle'});
}
}
})
它说它找不到模型someDB
..我是否需要为我的适配器创建一个模型,即使我使用websql来获取数据?
答案 0 :(得分:1)
它告诉你SomeDB
不存在。 Ember期待以下内容出现在您的代码中:
App.SomeDB = DS.Model.extend({});
如果您未声明SomeDB
模型,则无法创建该类型的新记录。 (至少没有Ember-Data商店。)