Wow, das ist schwer zu finden.Spalte zu existierendem Glutmodell hinzufügen
Ich habe ein existierendes Modell in Glut und ich möchte eine neue Spalte hinzufügen. Ich konnte nicht sehen, wie man das vom CLI erzeugt, also habe es manuell zu meinem component.js
und models/post.js
hinzugefügt. Ich habe das Feld zu meinem Formular hinzugefügt und den Lenker meiner Ansicht nach. Firebase überprüfen Ich kann bestätigen, dass ich das Feld nicht aktualisiere.
In Rails würde ich einfach rails generate migration add_snippet_to_posts snippet:string
ausführen, aber dies in Ember tun, erstellt nur ein neues Modell.
Modell/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
}
}
});
Wie mache ich das?
Gelöst
benötigt Routen/index.js zu aktualisieren:
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();
}
}
});
Das Wort "Spalte" war für mich in dieser Frage verwirrend - aber vielleicht ist das die SQ - oder Rails Art, über das Attribut eines Modells zu sprechen. – sheriffderek