2
哇這很難找到。在現有的餘燼模型中添加列
我有一個現有的模型在燼,我想添加一個新的列。我一直無法看到如何從CLI生成這個,所以手動將它添加到我的component.js
和models/post.js
。我已將該字段添加到我的表單以及我的視圖中的車把。檢查Firebase我可以確認我沒有更新該字段。
在Rails中我只是運行rails generate migration add_snippet_to_posts snippet:string
,但在Ember中這樣做只是創建一個新模型。
模型/ post.js
import DS from 'ember-data';
export default DS.Model.extend({
title: DS.attr('string'),
author: DS.attr('string'),
createdDate: DS.attr('date'),
text: DS.attr('string'),
snippet: DS.attr('string') #<=manually added this.
});
component.js
import Ember from 'ember';
export default Ember.Component.extend({
actions: {
createPost: function (model) {
this.sendAction('createPost', model);
// Clear each input field
this.set('newPost.title', null);
this.set('newPost.author', null);
this.set('newPost.text', null);
this.set('newPost.snippet', null); #<= manually added this
}
}
});
我該怎麼辦呢?
解決
需要更新路線/ index.js太:
import Ember from 'ember';
export default Ember.Route.extend({
model: function() {
return this.store.findAll('post');
},
actions: {
createPost: function (model) {
let post = this.store.createRecord('post', {
title: model.title,
text: model.text,
author: model.author,
snippet: model.snippet, # <= add this too
createdDate: new Date()
});
post.save();
}
}
});
在這個問題中,「列」這個詞讓我感到困惑 - 但也許這就是討論模型屬性的sql或rails方法。 – sheriffderek