rmn*_*ish -1 ajax json ruby-on-rails
format.json和format.html是什么意思?以及如何在客户端使用它?
def create
@user = User.new(params[:user])
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: "new" }
format.json { render json: @user.errors, status: :unprocessable_entity }
end
end
end
Run Code Online (Sandbox Code Playgroud)
它允许您的应用程序以不同的方式响应,具体取决于客户端是否请求html响应或javascript/JSON响应.
在这种情况下,如果@ user.save成功并且请求需要html响应,则将执行以下代码.{redirect_to @user,注意:'用户已成功创建.'}.
但是,如果您使用javascript或ajax发出请求,并且您希望将结果作为JSON对象,则将执行以下代码{render json:@ user,status :: created,location:@user}.