1

今私の問題をよりよく説明したいと思っています.html5キャンバスでスケッチシステムを開発するために、Javaでplay 2フレームワークを使用しています。

フロントエンドは 3 つの異なるビュー (ページ) で構成されます。1 つは html5 キャンバスのレンダリング用、もう 1 つは送信フォームと表示タグのレンダリング用です。そして、管理者ページとして 3 番目のページ。これらのビューを作成し、あるレンダリングされたビューまたはページから別のビューまたはページに移動できるようにしたい。

基本的な質問で申し訳ありませんが、フレームワークをプレイするのは初めてです。

私への提案。

@helper タグが使用されていることは知っていますが、その方法がわからないようです。

ありがとうございました。

4

1 に答える 1

5

使用する必要がない@helper@tags、テンプレートを他のテンプレートに含めるためのものです。一般的なレンダリングを使用するだけで、最初にファイルを作成します。

  • app/views/canvas.scala.html
  • app/views/edit.scala.html
  • app/views/admin.scala.html

次に、Appliactionコントローラーで各ビューを表す 3 つのアクションを作成します。

public static Result canvas(){
    return(views.html.canvas.render());    
}

public static Result canvas(){
    return(views.html.edit.render());    
}

public static Result canvas(){
    return(views.html.admin.render());    
}

アクションごとに、指定された URL を適切なアクションに「変換」するためのrouteinも作成する必要があります (最初はデフォルトです)。conf/routes

GET   /             controllers.Application.canvas()
GET   /edit         controllers.Application.edit()
GET   /admin        controllers.Application.admin()

最後に、各ビューにそのブロックを追加して、すべてのページに表示される「メイン メニュー」を取得します。注:reverseRoutinghrefをリンクとして使用して、それらが常に正しいことを確認します-ルートで何かを変更した場合でも(事実上、ここでは@tagsを使用して1つのファイルから多くのビューにこのブロックを含めることができますが、今は手動で配置してください) :

<div class="main-nav">
    <a href='@routes.Application.canvas()'>Canvas page</a>
    <a href='@routes.Application.edit()'>Edit form</a>
    <a href='@routes.Application.admin()'>Admin area</a>
</div>

これで、3 つのアクションを持つ基本的なアプリケーションのサンプルができましviewた。

最後に、私に腹を立てないでください。ただし、公式ドキュメントと含まれている Java サンプルを研究するためにもっと時間を費やす必要があります。3 つのページ間を移動できる基本的なシナリオを紹介しました。ほとんどの場合、動作するアプリを作成するだけでは十分ではありませんが、それを説明しても意味がありません。ドキュメントでまだ説明されており、サンプルで実証されているためです。

于 2012-08-29T14:55:26.137 に答える