2013-11-22 15 views

答えて

16

、あなたはこれが設定されていることを確認してください。役立ちます

fos_rest: 
    format_listener: true 
    routing_loader: 
     default_format: json 
     include_format: false 

希望を

EDIT:

使用する方法を示しFOSRestBundle Docsの例がありますClassResourceInterface。最大の違いは、ルートを手動で定義する必要がないことです。インターフェイスは、クラス名とメソッド名に基づいてルートを生成します。だから、例えば

(これはドキュメントに示されている、あなたはクラス名が使用されている方法をオーバーライドすることができます)あなたのメソッドに名前を何に非常に重要であり、このような何か:

use FOS\RestBundle\Routing\ClassResourceInterface { 

class UserController implements ClassResourceInterface { 

    public function cgetAction() { 
     //return a list of all users 
    } 
} 

は、ルートを生成しますこれは次のようになります:[GET] /users。これは私がバンドルを使う方法であり、うまくいきます。 {_format}オプションをどこにでも使用する必要はありません。手動でルートを手動で定義する必要がないからです。

注記 - 私のオリジナルの回答も参照して、バンドルの使い方に役立つ編集を行いました。私はあなたの方法でバンドルを使用しようとしていないので、これが動作するかどうかは分かりませんが、docsは動作するように見えます。

+0

いいえ、これは機能しません。私は 'routing.yml'から' type:rest'を削除し、コントローラで '@Rest \ Get("/user ")'のような注釈を使うことで実現できました。 –

+0

バンドルをどのように使用しているかによって異なります。私はClassResourceInterfaceを使用しており、これは正常に動作します。 – Sehael

+0

使い方の例を教えてもらえますか? –

関連する問題