【发布时间】:2014-04-12 19:49:12
【问题描述】:
我是使用rails 的backbone.js 新手,我编写了一个简单的创建用户代码。当创建失败时,我希望以一种很好的方式在闪存消息中呈现错误,例如 rails 中的错误。
这是我的代码;
Skymama.Views.UsersNew = Backbone.View.extend({
template: JST['users/new'],
render: function() {
//Backbone.Validation.bind(this);
this.$el.html( this.template );
return this;
},
events: {
"click #user_submit" : "createUser"
},
createUser: function( event ){
// validate the form
var firstName = $("#user_first_name").val(); //required
var lastName = $("#user_last_name").val(); //required
var password = $("#user_password").val(); //required
var phoneNumber = $("#user_phone_number").val(); //required
var emailAddress = $("#user_email").val(); //required
var passwordConfirmation = $("#password_confirmation").val(); //required
var dateOfBirth = $("#user_date_of_bith").val();
//if (passwordConfirmation == password)({
var user = new Skymama.Models.User()
user.save({first_name: firstName, last_name: lastName, password: password,
phone_number: phoneNumber, email_address: emailAddress, date_of_bith: dateOfBirth}, {
success: function(user, response){
// create flash message and render new user page
},
error: function(user, response){
//create flash message with errors and render new page
//alert(response.responseText);
var errorView = new Skymama.Views.ErrorMessages({ el: $("#error_messages")});
}
});
//});
},
});
问题是呈现带有错误的 Flash 消息。 我已经尝试创建一个视图来显示 Flash 错误的模板。
这里是代码;
Skymama.Views.ErrorMessages = Backbone.View.extend({
template: JST['errors/error_messages'],
render: function() {
this.$el.html( this.template );
return this;
},
})
和模板;
<span class="btn btn-danger btn-sm tooltip-error" data-rel="popover" data-placement="top" data-original-title="<i class='icon-bolt red'></i> Top Danger" data-content="Oh snap! Change a few things up and try submitting again.">
Top
</span>
谢谢
【问题讨论】:
标签: javascript ruby-on-rails backbone.js