2012-05-06 8 views
2

私はRESTfulなPlay 2.0アプリケーションを持っており、ブラウザのリンクからDELETE /sessionsに電話したいと思います。Playで非GET/POST HTTPメソッドを呼び出すにはどうすればよいですか?

どうすればよいですか? Railsは非GET/POST要求に対して_methodクエリパラメータを使用するという慣例を持っていますが、Playのドキュメントではこれについて言及していません。

また、リンクのhrefからメソッドを呼び出すには別のフォームまたはXMLHttpRequestを作成する必要がありますか、それともRailsのdata-method属性のようなものがありますか?

答えて

0

あなたは共通のリンクでそれをしません。

Cite from similar topic on Google Groups

リンク(タグ)は、DELETEメソッドで動作するように意図されていません。リンクの意味 は、別のリソースに「リンク」して、GET要求を使用して を取り出すことができます。 DELETEリクエストはAjaxで、または "X-HTTP-Method-Override"という値と "DELETE"という名前の隠し入力を含むPOSTメソッドを使用して、フォーム で行うことができます。

は、何を意味するかである:あなたのビューで

GET /delete/:itemId controllers.Application.deleteItem(itemid : Long) 

<a href="@routes.Application.deleteItem(item.id)">Delete @item.name</a> 

またはAJAX呼び出しで

conf/routes中:あなたがアイテムを削除するためにGETを使用必要があります。

<script type="text/javascript"> 
    $.ajax({ 
     url:"@routes.Application.actionToDeleteSomething()", 
     type:"DELETE" 
    }); 
</script> 
関連する問題