3

私のルーティング定義は次のようになります (これを参照として使用して、コードの順序を改善します)。

$app->get('/actor/{id}', 'TMDb\Controller\TMDbController::actorAction');

そして、これは私のコントローラーがどのように見えるかです:

class TMDbController {
    public function actorAction(Request $request, Application $app) { ... }
} 

idそれは機能しましたが、アクションコントローラーで値を取得する方法が見つかりませんでした。

4

1 に答える 1

4

次のように簡単です。

public function actorAction($id, Request $request, Application $app)

Silex (実際には Symfony2 の HttpFoundation) は、名前付きパラメーターを URL から同じ名前の関数の引数に渡します。

パラメータコンバーターもチェックアウトして、コントローラーがプレーンIDではなく、IDが参照するオブジェクト(または配列)を取得するようにする必要があります。

于 2013-07-26T14:55:56.120 に答える