複数モデルを連携処理する (3/6)
作成:2010-05-07 16:55
更新:2010-05-10 17:38
更新:2010-05-10 17:38
■MsgDataの作成機能を作る
では、MsgDataを作成するページを用意しましょう。ここでは、addmsg.htmlとして投稿のフォームを用意することにします。
このページでは、「addmsg.html?id=番号」というようにアクセスすることで、指定のListDataがフォームに設定され、そのListDataに対するコメントが保存されるようにします。ページがロードされると、initialが呼び出され、指定のIDのListDataが呼び出されます。そしてcallback関数で、取得されたデータからタイトルとID番号を、<div>タグおよび非表示フィールドに設定します。
後は、コメントを書いて送信すると、/addmsgにフォームが送られ、ここでMsgDataの作成がされるようになる、というわけです。
このページでは、「addmsg.html?id=番号」というようにアクセスすることで、指定のListDataがフォームに設定され、そのListDataに対するコメントが保存されるようにします。ページがロードされると、initialが呼び出され、指定のIDのListDataが呼び出されます。そしてcallback関数で、取得されたデータからタイトルとID番号を、<div>タグおよび非表示フィールドに設定します。
後は、コメントを書いて送信すると、/addmsgにフォームが送られ、ここでMsgDataの作成がされるようになる、というわけです。
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
※addmsg.htmlのソースコード <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>MsgDataの追加</title> <script type="text/javascript" src="lib.js"></script> <script type="text/javascript"> <!-- function initial(){ var datas = getQuery(); getData(datas.id); } function callback(request){ var arr = eval(request.responseText); var data = arr[0]; document.getElementById("id").value = data.id; document.getElementById("title").innerHTML = data.title + ' (' + data.url + ')'; } //--> </script> </head> <body onload="initial();"> <h1>メッセージの追加</h1> <form method="post" action="/addmsg"> <table> <input type="hidden" id="id" name="id"> <tr><th>TITLE:</th><td><div id="title"></div></td></tr> <tr><th>Message:</th><td><input type="text" name="message"></td></tr> <tr><th></th><td><input type="submit" value="追加"></td></tr> </table> </form> </body> </html> ※web.xmlへの追記 <servlet> <servlet-name>add_msg</servlet-name> <servlet-class>jp.tuyano.AddMsgDataServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>add_msg</servlet-name> <url-pattern>/addmsg</url-pattern> </servlet-mapping>
※関連コンテンツ
「Google App Engine for Java(GAE/J)プログラミング入門」に戻る