【发布时间】:2017-05-15 15:33:56
【问题描述】:
我刚刚开始使用 Rails 应用程序,我正在尝试在表单上使用 Ajax,但我不知道如何在 js.erb 文件中捕获状态代码。我正在关注本教程:http://guides.rubyonrails.org/working_with_javascript_in_rails.html
在我的用户控制器上,我有一个更新方法的代码:
respond_to do |format|
if @user.save
format.html { redirect_to @user, notice: 'User was successfully created.' }
format.js {}
format.json { render json: @user, status: :created, location: @user}
else
format.html { render action: 'edit' }
format.js {}
format.json { render json: @user, status: :unprocessable_entity }
logger.debug @user.response_errors
end
end
我在我的views/users/文件夹中创建了一个update.js.erb 文件,并且很容易调试@user var,但我不知道如何获取在我的方法上设置的状态码。
对不起,如果这是一个愚蠢的问题,但我是 Rails 的新手,我正在努力遵循所有框架概念,我不知道创建对 Ajax 请求的响应的最佳实践。
我想要实现的是这样的:
#on my update.js.erb
if( status == 'created' ) {
alert( 'Ok, created' )
} else {
alert( 'Something wrong happened' )
}
感谢您的帮助。
【问题讨论】:
标签: ruby-on-rails json ruby ajax respond-to