1

Rails 3.2 では、ajax を使用して ActiveRecord モデル インスタンスを作成する方法を理解しようとしています。基本的には、フォーム フィールドを取得し、ajax を使用してサーバーに送信し、モデル インスタンスを取得したいと考えています。驚いたことに、stackoverflow や他の場所でこの例を 1 つも見つけることができません。

誰かがこれの例を持っていますか?

助けてくれてありがとう。

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]

完全な例については、scaffold コマンド (おそらく別のアプリケーションで) を使用して、モデル、ビュー、およびコントローラーを作成します。

rails generate scaffold banana
于 2012-09-12T18:07:52.360 に答える