1

在 Rails 3.2 中,我试图弄清楚如何使用 ajax 创建 ActiveRecord 模型实例。基本上我想获取表单字段,使用 ajax 将它们发送到服务器,然后取回模型实例。令人惊讶的是,我在 stackoverflow 或其他地方找不到一个这样的例子。

有没有人有这方面的例子?

谢谢你的帮助。

4

1 回答 1

2

您需要在控制器中添加一个操作,以响应两种格式(html 和 json):

# app/controllers/bananas_controller.rb
class BananasController < ApplicationController
  def create
    @banana = Banana.new(params[:banana])

    respond_to do |format|
      if @banana.save
        format.html { redirect_to @banana, notice: 'Banana was successfully created.' }
        format.json { render json: @banana, status: :created, location: @banana }
      else
        format.html { render action: "new" }
        format.json { render json: @banana.errors, status: :unprocessable_entity }
      end
    end
  end
end

您还需要添加路线:

# config/routes.rb
resources :bananas, :only => [:create]

对于一个完整的例子,使用脚手架命令(可能在另一个应用程序上)来创建模型、视图和控制器:

rails generate scaffold banana
于 2012-09-12T18:07:52.360 回答