1
Я использую данные ember-данных, и мне нужно вставить зависимость в адаптер данных магазина. Здесь приведен упрощенный код:Как вставить зависимость в адаптер магазина
window.App = Ember.Application.create({
ready: function() {
this.register('database:current', this.Database);
// this works fine, this.get('database') inside routes works ok
this.inject('route', 'database', 'database:current');
// but this does not work
this.inject(App.SqliteAdapter, 'database', 'database:current');
// also tried this:
// this.inject('dataAdapter', 'database', 'database:current');
}
});
App.Store = DS.Store.extend({
revision: 13,
adapter: App.SqliteAdapter
});
App.SqliteAdapter = DS.Adapter.extend({
find: function(store, type, id) {
var db = this.get('database');
console.log(db); // this is undefined
}
});
App.Database = Ember.Object.extend({});
Почему этот код не работает?
Версии:
DEBUG: Ember : 1.1.2
DEBUG: Ember Data : 1.0.0-beta.3
DEBUG: Handlebars : 1.0.0
DEBUG: jQuery : 2.0.3
Все еще не работает. Может быть, из-за более новых версий ember-данных? – galymzhan
Ну, вы используете довольно недавнюю версию EmberData. Почему вы указываете версию 13 в своем магазине? – gerry3
Я скопировал это откуда-то. Мне даже нужно указывать ревизии? – galymzhan