1

Play!Framework を使用すると、入力名「message.id」でフォームを作成し、そのようなアクションを作成できます

public static void getMessage( Message message )
{
    ....
}

したがって、パラメータ message.id は、値に「findById」を使用してモデル Message に変換されます。

Play では、REST URL を書くこともできます。たとえば、GET /message/{id}

しかし、この場合、アクション署名は

public static void getMessage( long id )
{
    ....
} 

この場合、自分で Message.findById を呼び出す必要があります。

私はそのような組み合わせをしようとしています

GET /message/{message.id}    MessageController.getMessage

となる行動

public static void getMessage( Message message ){ ... }

しかし、私はそれを機能させることができませんでした。play 1.2.1 を使用している場合、どのように動作させるのですか?

これに関するGoogleグループのスレッドを見つけました:ここ

4

1 に答える 1

0

2 つを混在させることはできず、あまり意味がありません。Play のpojo オブジェクト バインディングを使用すると、Java オブジェクトをパラメーターとして使用してアクション メソッドを記述できますが、このメカニズムは、その規則に従わない場合にのみ機能します。Message次のようにgetMessage()単純にルートを定義するためにa を渡したい場合:

GET    /message/{message}    MessageController.getMessage

次のようなURLを介して適切なメッセージを選択できます/message/message.id=123

于 2012-04-07T08:30:28.533 に答える