0

この名前空間とルートを作成しました:

名前空間 :api do リソース :create_kpi, :except => [:edit, :destroy] end

コントローラーは次のようになります。

class Api::CreateKpiController < ApplicationController
  def create
    temp = Kpi.new(params[:data])  

    puts "temp: "
    puts temp.inspect    
  end
end

そして、私はこのようなことをしたいと思います:

POST    http://127.0.0.1:my_port/api/create_kpi?data="some stuff"

しかし、私が持っているセットアップでURLを構築する方法がわかりません。私のURLはどのように見えるべきですか?

ありがとう!

4

3 に答える 3

1

POSTリクエストのクエリパラメータでデータを渡してはならないため、URLはHOST:PORT / api / create_kpiのようになり、POSTDATAにはdata="somestuff"が含まれている必要があります。

これがカールの例です

curl -i http://HOST:PORT/api/create_kpi -F data="some stuff" 
于 2012-05-30T21:56:39.267 に答える
1

api_create_kpi_pathルートエントリは、リンクで使用するヘルパーまたはそのようなものを作成する必要があるようです。クエリ パラメータとして追加するルート ヘルパー パラメータを渡すだけでよいので、api_create_kpi_path(:data => "some stuff").

于 2012-05-30T21:57:45.343 に答える
1

私があなたを正しく理解していれば、あなたはコントローラーを持っていて、ビューに何を入れるべきか知りたいですか?

その場合、データを投稿しているので、form_tagform_forを見てください。投稿を送信するためのすべてが Rails によって構築されます。

などの作業を開始するための非常に便利なリソースは、definitive guideです。

于 2012-05-30T21:58:46.390 に答える