我正在使用Ember App Kit.我有一个带有学生姓名的表单,我可以毫无问题地将数据保存到数据库中.问题是,每当我http://localhost:8000/#/students/new从另一个页面转换回此路径()时,数据(学生姓名)就会保留在表单上.如果我刷新屏幕,那么数据将被清除,我将获得一个新的表格.我究竟做错了什么?
此外,如果我决定不保存或添加记录并去查看学生列表,我会在屏幕上看到一个空记录.但该记录不在数据库中.我怎么能防止这种情况?
//--------------------------------------------
// Controller
var StudentsNewController = Ember.ObjectController.extend({
init: function() {
var newSystem = this.store.createRecord('student');
this.set('newStudent', newStudent);
this._super();
},
actions: {
acceptChanges: function () {
var self = this;
self.get('newStudent').save().then(function(student){
self.transitionToRoute('students');
});
}
}
});
export default StudentsNewController;
//--------------------------------------------
// Model
var Student = DS.Model.extend({
name: DS.attr('string'),
major: DS.belongsTo('major')
});
export default Student;
//--------------------------------------------
// Template
<form {{action 'updateSystem' on="submit"}}>
<fieldset>
<div>
<label>Student Name</label>
{{input value=newStudent.name size="50"}}
</div>
<button {{action 'acceptChanges'}}>Add</button>
</fieldset>
</form>
Run Code Online (Sandbox Code Playgroud) 我在config\adapters.js中有一个数据库连接字符串,如下所示.我不想以纯文本形式保留连接字符串.保护该信息以及服务可以调用和连接到数据库的最佳方法是什么?
module.exports.adapters = {
// If you leave the adapter config unspecified
// in a model definition, 'default' will be used.
'default': 'mssql',
mssql: {
connectionString: 'Driver={SQL Server Native Client 10.0};Server=foo.domain.com;Database=RODDY;Uid=jsmith;Pwd=nw0ow21',
module: 'sails-mssql'
}
};
Run Code Online (Sandbox Code Playgroud)